Web service 概念
Web service使用與平臺(tái)和編程語(yǔ)言無(wú)關(guān)的方式進(jìn)行通訊的一項(xiàng)技術(shù), web service 是一個(gè)接口, 他描述了一組可以在網(wǎng)絡(luò)上通過(guò)標(biāo)準(zhǔn)的XML消息傳遞訪問(wèn)的操作,它基于xml語(yǔ)言協(xié)議來(lái)描述要執(zhí)行的操作或者要與另外一個(gè)web 服務(wù)交換數(shù)據(jù), 一組以web服務(wù)在面向服務(wù)體系結(jié)構(gòu)中定義的web應(yīng)用程序.
可以簡(jiǎn)單的理解為web service是一個(gè)SOA(面向服務(wù)的編程)架構(gòu), 它不依賴(lài)于語(yǔ)言, 也不依賴(lài)于平臺(tái), 可以實(shí)現(xiàn)不同語(yǔ)言之間的通訊和相互調(diào)用.SOAP(簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議) 是xml web service的通訊協(xié)議.? 當(dāng)用戶(hù)通過(guò)UDDI找到WSDL(Web Service Description Language)文檔后,通過(guò)SOAP調(diào)用建立的web service的一個(gè)或者多個(gè)操作.SOAP是xml文檔形式的調(diào)用方法規(guī)范, 可以支持不同的底層接口.
Web service 接口準(zhǔn)備 如果有現(xiàn)成的webService請(qǐng)忽略這步
使用Eclipse或者Intellij等IDE工具,使用java語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)單的web服務(wù).
1.在Intellij中File->New->Project中選擇使用Maven來(lái)創(chuàng)建項(xiàng)目,輸入項(xiàng)目名稱(chēng)即可創(chuàng)建項(xiàng)目,我們使用WebService來(lái)命名項(xiàng)目,項(xiàng)目創(chuàng)建完成后在其目錄中會(huì)有一個(gè)文件pom.xml,會(huì)自動(dòng)加入如下配置文件:
<groupId>webService</groupId>
<artifactId>webService</artifactId>
<version>1.0-SNAPSHOT</version>
2.在java目錄下新建一個(gè)java class, 定義為一個(gè)webService 接口,只有方法,沒(méi)有具體實(shí)現(xiàn).
import javax.jws.WebMethod;
@javax.jws.WebService
public interface WebService {
@WebMethod
String sayHello(String name);
}
3.再同目錄下新建一個(gè)java class, 用來(lái)實(shí)現(xiàn)定義的webService接口, 并重載接口中定義方法.
@javax.jws.WebService
public class WebServiceImple implements WebService {
public String sayHello(String name){
System.out.println("請(qǐng)求成功了");
String a= name+"Hello world 你很厲害, 恭喜你!";
return a;
}
4.再新建一個(gè)java class, 用來(lái)啟動(dòng)發(fā)布我們的webService應(yīng)用
import javax.xml.ws.Endpoint;
public class WebServicePublish {
public static void main(String[] args) {
String address="http://localhost:8989/WS_Server/Webservice";
Endpoint.publish(address,new WebServiceImple());
System.out.println("服務(wù)端發(fā)布成功了!");
}
}
5. 發(fā)布應(yīng)用
右鍵選擇執(zhí)行即可發(fā)布應(yīng)用程序.
如果正常即可在控制臺(tái)上看到下列信息:
/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/bin/java -Dfile.encoding=UTF-8? 服務(wù)端發(fā)布成功了!
恭喜你發(fā)布成功了,接下來(lái)用瀏覽器直接訪問(wèn)
http://localhost:8989/WS_Server/Webservice?wsdl
看到一堆xml說(shuō)明webService可以正常訪問(wèn)了.
Web service 接口測(cè)試
webService支持相對(duì)有好的工具SoapUI, 它是針對(duì)soap協(xié)議而生, 我們打開(kāi)SoapUI應(yīng)用.
在SoapUI 的工具欄中我們選擇soap->Create a New Soap Project, 在彈框中我們輸入Project name 和WSDL Link
Project Name:推薦名字根據(jù)項(xiàng)目名稱(chēng)取
Initial WSDL:被測(cè)的wsdl link
Create Requests: 默認(rèn)選中
Create TestSuite: 測(cè)試套件可以這里勾選創(chuàng)建,也可以后續(xù)自行創(chuàng)建.
點(diǎn)擊OK 即可.
SoapUI根據(jù)link自動(dòng)導(dǎo)入所有接口信息
可以看到SayHello使我們?cè)贗ntellij中實(shí)現(xiàn)的接口方法.
我們?cè)赟oapUI的請(qǐng)求中, 在參數(shù)里輸入相關(guān)信息,驗(yàn)證接口
查驗(yàn)接口request和Response
同時(shí)查看Intellij IDE是否有報(bào)錯(cuò)信息, 控制臺(tái)顯示請(qǐng)求成功
從Response中可以判斷我們的返回和IDE中定義的是相符的.
增加TestSuite
增加TestSuite和TestCase的意義在于soap 接口測(cè)試為后續(xù)自動(dòng)化測(cè)試提供基礎(chǔ)腳本和回歸驗(yàn)證.
在webServiceTest右鍵New TestSuite
新建一個(gè)TestCase, 在Suite 右鍵New TestCase
最后一步將接口添加到TestCase, 右鍵接口SayHello選擇Add to TestCase, 然后選擇要添加Suite和TestCase,即可將接口添加進(jìn)入Step中
這樣SayHello 接口就被添加到testCase中了,還是非常方便的., 這時(shí)候可以給接口SayHello添加相關(guān)的斷言.
今日推薦閱讀文章精選推薦
為什么要做接口測(cè)試
JMeter數(shù)據(jù)庫(kù)操作
Jmeter接口測(cè)試-正則表達(dá)式
JMeter中文返回亂碼
Jmeter接口測(cè)試-參數(shù)化
JMeter接口測(cè)試-基礎(chǔ)
測(cè)試-感想
咨詢(xún)工作加微信
掃描二維碼
歡迎自薦和推薦, 需要的微信推送簡(jiǎn)歷!
請(qǐng)猛戳下面二維碼了解更多
當(dāng)前題目:WebService接口測(cè)試-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://chinadenli.net/article48/dsjohp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、域名注冊(cè)、虛擬主機(jī)、電子商務(wù)、網(wǎng)站收錄、小程序開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容