之前裝了SoapUI,最近裝了Postman,分別用它們測試了WebService,下面為用法。
測試的在線WebService(數據來源於中國氣象局)
Endpoint: http://www.webxml.com.cn/WebServices/WeatherWebService.asmx
WSDL: http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
一、用SoapUI測試
1、菜單欄File -> New SOAP Project -> 打開窗口 ->
Initial WSDL 輸入http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
-> OK,SoapUI會自動把所有方法把列出來了。
-> 雙擊節點getSupportCity下面的Request,自動打開Request 1窗口,如下圖
2、現在只需在 <web:byProvinceName>?</web:byProvinceName>中輸入參數值,如:廣東,
點擊窗口的三角塊,返回結果如下圖:
二、用Postman測試
1、點擊中部的加號,出現Get Untitled Request標簽頁,如下圖
2、把Get改成POST,后面輸入WebService地址:http://www.webxml.com.cn/WebServices/WeatherWebService.asmx?wsdl
點擊下面的Headers,設置Key為Content-Type,Value為text/xml;charset=UTF-8
點擊Body,點擊raw,在下面輸入窗口中,輸入SoapUI窗口的請求串:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://WebXml.com.cn/"> <soapenv:Header/> <soapenv:Body> <web:getSupportCity> <!--Optional:--> <web:byProvinceName>廣東</web:byProvinceName> </web:getSupportCity> </soapenv:Body> </soapenv:Envelope>
說明:
(1) xmlns:web="http://WebXml.com.cn/" 里面地址http://WebXml.com.cn需要和WebService地址保持一致;
(2)xmlns:web的命名空間web需要和下面方法<web:getSupportCity>里面的web保持一致;
(3)getSupportCity為方法名;
(4)byProvinceName為參數;
點擊上面的Send按鈕,返回結果如下圖
總結:
在測試WebService方面,用SoapUI非常方便,不單把所有方法把列出來,測試方法時也只需要輸入參數值。
Postman測試過程很繁瑣,好多地方都需要手動輸入。