如何使用soapUI模拟webservice客户端发送请求
隨著軟件行業(yè)的發(fā)展,一個(gè)完成的系統(tǒng)已經(jīng)不能使用簡(jiǎn)單的項(xiàng)目來(lái)完成,而是有多個(gè)項(xiàng)目之間相互協(xié)同工作,項(xiàng)目之間就需要進(jìn)行即時(shí)通訊,現(xiàn)在比較流行的通訊方式是通過(guò)webservice服務(wù)。比較流程的webservice框架有axis、cxf等。對(duì)于一個(gè)服務(wù),首先需要驗(yàn)證其功能,需要通過(guò)客戶端發(fā)送請(qǐng)求報(bào)文。對(duì)于簡(jiǎn)單的驗(yàn)證,通過(guò)編寫代碼創(chuàng)建客戶端變得極其不方便。現(xiàn)在,一般都采用soapUI軟件模擬webservice客戶端進(jìn)行與服務(wù)端進(jìn)行交互。小編介紹下,如何使用soapUI進(jìn)行發(fā)送請(qǐng)求報(bào)文。
工具/原料
-
soapUI軟件
-
電腦
方法/步驟
1
首先是要配置服務(wù)的地址,在進(jìn)行webservice客戶端開(kāi)發(fā)時(shí),首先需要獲取到服務(wù)端的webservice服務(wù)地址,根據(jù)服務(wù)地址以及通訊協(xié)議創(chuàng)建對(duì)應(yīng)的客戶端請(qǐng)求。如果對(duì)方提供的是一個(gè)服務(wù)地址,可以通過(guò)瀏覽器將復(fù)制粘貼進(jìn)去。從頁(yè)面上可以看出這是一個(gè)基于axis框架生成的一個(gè)webservice服務(wù)端。
有些服務(wù)需要加上后綴,有些不需要,這個(gè)要特別注意,在服務(wù)端地址后面加上“?wsdl”(注意是英文的問(wèn)號(hào)),在頁(yè)面中就可以看到服務(wù)端公布出來(lái)的各種服務(wù)、命名空間等其他信息。通過(guò)element可以看出,服務(wù)端公布出來(lái)兩個(gè)方法:sayHello和sayNo。后面帶有Response的說(shuō)明是服務(wù)端返回的信息。
根據(jù)服務(wù)端提供的地址,在soapUI工具上創(chuàng)建webservice客戶端請(qǐng)求。打開(kāi)soapUI軟件,在軟件的左上角點(diǎn)擊file文件,在彈出頁(yè)面中有三種方式,一般新增的使用第一種new soapUI project新建一個(gè)soapUI項(xiàng)目。
點(diǎn)擊新建soapUI項(xiàng)目之后,在彈出框中,需要輸入服務(wù)端的地址(注意地址后面要加上"?wsdl"英文符號(hào)),Project Name項(xiàng)目名稱可以有漢字,能夠自己區(qū)分是哪個(gè)服務(wù)端的項(xiàng)目即可。其他的值選擇默認(rèn)即可,不需要勾選其他選項(xiàng),點(diǎn)擊Ok即可創(chuàng)建好項(xiàng)目。
服務(wù)端方法公布展示。通過(guò)服務(wù)端的地址,創(chuàng)建一個(gè)soap項(xiàng)目之后,soapUI就自動(dòng)解析服務(wù)端提供的方法接口。從示例中可以看出這個(gè)服務(wù)對(duì)外提供了兩個(gè)服務(wù)接口sayHello和sayNo。
點(diǎn)開(kāi)其中的Request 1可以看到這個(gè)請(qǐng)求的報(bào)文信息以及這個(gè)請(qǐng)求需要的參數(shù)和參數(shù)類型。消息的報(bào)文頭信息和命名空間已經(jīng)通過(guò)soapUI工具自動(dòng)生成,在發(fā)送報(bào)文的時(shí)候只需要填寫必要的入?yún)⒓纯伞?/p>
模擬客戶端發(fā)送請(qǐng)求。在客戶端輸入需要的參數(shù)之后,點(diǎn)擊左上角的“發(fā)送”按鈕就可以模擬客戶端請(qǐng)求發(fā)送。發(fā)送完成后,在右側(cè)就可以看到服務(wù)端返回的信息,這就是整個(gè)消息發(fā)送請(qǐng)求和返回的全流程。
wsdl文件方式的處理。對(duì)于有些服務(wù)端提供的不是類似上面的地址服務(wù)器,而是一些wsdl文件的方式。打開(kāi)wsdl文件可以看到和在瀏覽器中打開(kāi)服務(wù)端地址展示的內(nèi)容相同,只是提供的方式不同而已。文件的格式可以是xml或者是wsdl的格式。
通過(guò)wsdl文件內(nèi)容創(chuàng)建project。點(diǎn)擊File文件下面的“creates a new soapUI project“。通過(guò)選擇一個(gè)文件的方式,就可以根據(jù)wsdl報(bào)文內(nèi)容的方式創(chuàng)建客戶端。
點(diǎn)擊右側(cè)的Browse瀏覽按鈕,找到wsdl文件文件,這個(gè)文件的后綴可以是wsdl的方式也可以是xml的方式,然后點(diǎn)擊打開(kāi)即可將文件導(dǎo)入到soapUI中,和服務(wù)地址類似,輸入項(xiàng)目的名稱,其他默認(rèn),點(diǎn)擊OK即可創(chuàng)建成功。
MyService是通過(guò)服務(wù)地址的方式創(chuàng)建,MyService2222是通過(guò)wsdl文件內(nèi)容的方式創(chuàng)建的。通過(guò)比對(duì)可以看出,這兩種方式創(chuàng)建的客戶端是一致的。同樣解析出sayHello和sayNo服務(wù)。
END
注意事項(xiàng)
-
服務(wù)端地址后面添加的“?wsdl”必須要求是英文的問(wèn)號(hào)
-
通過(guò)文件(后綴wsdl或者xml)的方式創(chuàng)建的時(shí)候,要保障文件頭沒(méi)有多余的空格空行。
來(lái)源:https://jingyan.baidu.com/article/cbcede0712849a02f40b4d88.html
總結(jié)
以上是生活随笔為你收集整理的如何使用soapUI模拟webservice客户端发送请求的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 大门朝南的房子主房应该在哪个位置
- 下一篇: postman模拟post请求的四种请求