如何使用soapUI模擬webservice客戶端發送請求?

Tags: 項目, 客戶端,

隨著軟件行業的發展,一個完成的系統已經不能使用簡單的項目來完成,而是有多個項目之間相互協同工作,項目之間就需要進行即時通訊,現在比較流行的通訊方式是通過webservice服務。比較流程的webservice框架有axis、cxf等。對於一個服務,首先需要驗證其功能,需要通過客戶端發送請求報文。對於簡單的驗證,通過編寫代碼創建客戶端變得極其不方便。現在,一般都採用soapUI軟件模擬webservice客戶端進行與服務端進行交互。小編介紹下,如何使用soapUI進行發送請求報文。

如何使用soapUI模擬webservice客戶端發送請求

工具/原料

soapUI軟件

電腦

方法/步驟

在進行webservice客戶端開發時,首先需要獲取到服務端的webservice服務地址,根據服務地址以及通訊協議創建對應的客戶端請求。如果對方提供的是一個服務地址,可以通過瀏覽器將複製粘貼進去。從頁面上可以看出這是一個基於axis框架生成的一個webservice服務端。

如何使用soapUI模擬webservice客戶端發送請求

在服務端地址後面加上“?wsdl”(注意是英文的問號),在頁面中就可以看到服務端公佈出來的各種服務命名空間等其他信息。通過element可以看出,服務端公佈出來兩個方法:sayHello和sayNo。後面帶有Response的說明是服務端返回的信息

如何使用soapUI模擬webservice客戶端發送請求

根據服務端提供的地址,在soapUI工具上創建webservice客戶端請求。打開soapUI軟件,在軟件的左上角點擊file文件,在彈出頁面中有三種方式,一般新增的使用第一種new soapUI project新建一個soapUI項目

如何使用soapUI模擬webservice客戶端發送請求

點擊新建soapUI項目之後,在彈出框中,需要輸入服務端的地址(注意地址後面要加上"?wsdl"英文符號),Project Name項目名稱可以有漢字,能夠自己區分是哪個服務端的項目即可。其他的值選擇默認即可,不需要勾選其他選項,點擊Ok即可創建好項目。

如何使用soapUI模擬webservice客戶端發送請求

服務端方法公佈展示。通過服務端的地址,創建一個soap項目之後,soapUI就自動解析服務端提供的方法接口。從示例中可以看出這個服務對外提供了兩個服務接口sayHello和sayNo

如何使用soapUI模擬webservice客戶端發送請求

點開其中的Request 1可以看到這個請求的報文信息以及這個請求需要的參數參數類型。消息的報文頭信息命名空間已經通過soapUI工具自動生成,在發送報文的時候只需要填寫必要的入參即可。

如何使用soapUI模擬webservice客戶端發送請求

模擬客戶端發送請求。在客戶端輸入需要的參數之後,點擊左上角的“發送”按鈕就可以模擬客戶端請求發送。發送完成後,在右側就可以看到服務端返回的信息,這就是整個消息發送請求和返回的全流程。

如何使用soapUI模擬webservice客戶端發送請求

wsdl文件方式的處理。對於有些服務端提供的不是類似上面的地址服務器,而是一些wsdl文件的方式。打開wsdl文件可以看到和在瀏覽器中打開服務端地址展示的內容相同,只是提供的方式不同而已。文件的格式可以是xml或者是wsdl的格式。

如何使用soapUI模擬webservice客戶端發送請求

通過wsdl文件內容創建project。點擊File文件下面的“creates a new soapUI project“。通過選擇一個文件的方式,就可以根據wsdl報文內容的方式創建客戶端。

如何使用soapUI模擬webservice客戶端發送請求

點擊右側的Browse瀏覽按鈕,找到wsdl文件文件,這個文件的後綴可以是wsdl的方式也可以是xml的方式,然後點擊打開即可將文件導入到soapUI中,和服務地址類似,輸入項目的名稱,其他默認,點擊OK即可創建成功。

如何使用soapUI模擬webservice客戶端發送請求

MyService是通過服務地址的方式創建,MyService2222是通過wsdl文件內容的方式創建的。通過比對可以看出,這兩種方式創建的客戶端是一致的。同樣解析出sayHello和sayNo服務。

如何使用soapUI模擬webservice客戶端發送請求

注意事項

服務端地址後面添加的“?wsdl”必須要求是英文的問號

通過文件(後綴wsdl或者xml)的方式創建的時候,要保障文件頭沒有多餘的空格空行。

相關問題答案