JMeter學習(十一)WebSerivice測試計劃
WebSerivice測試計劃的取樣器有兩種方式:HTTP請求、SOAP/XML-RPC Request。
1. 測試計劃
啟動JMeter,點選測試計劃節點上,重新命名測試計劃:WebserviceTest.如下圖:
2. 新增執行緒組
新增一個執行緒組,右鍵單擊測試計劃 WebserviceTest -新增 - Threads(Users) > 執行緒組。接下來,修改執行緒組的預設屬性。修改以下屬性:
Name: Number of Users Number of Threads (Users): 5 Ramp-Up Period: 5 Loop Count:2
如下圖:
3. 新增配置元件
a.右鍵單擊測試計劃 WebserviceTest -新增 -配置元件 > 使用者定義的變數
名稱:User Defined Variables
點選新增,設定名稱:host,
設定值:wsf.cdyne.com,
設定Description:Host of Webservice.
b. 右鍵單擊測試計劃 WebserviceTest -新增 -配置元件 > HTTP請求預設值,名稱:HTTP Request Defaults
點選新增,設定伺服器名稱或IP:${host}
4. 新增取樣器
注意:這裡有兩種取樣器都可以,HTTP請求或者SOAP/XML-RPC Request
- 介紹HTTP請求的做法:右鍵單擊執行緒組 Number of Users-新增 -Sampler > HTTP請求
設定如下引數:
名稱:Soap Request
路徑:/WeatherWS/Weather.asmx
BodyData:
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:Body> <GetCityForecastByZIP xmlns="http://ws.cdyne.com/WeatherWS/"> <ZIP>60601</ZIP> </GetCityForecastByZIP> </soap:Body> </soap:Envelope>
- 介紹SOAP/XML-RPC Request的做法:右鍵單擊執行緒組 Number of Users-新增 -Sampler > SOAP/XML-RPC Request
設定如下引數:
名稱:Soap Request
URL:http://${host}/WeatherWS/Weather.asmx
BodyData:
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetCityForecastByZIP xmlns="http://ws.cdyne.com/WeatherWS/">
<ZIP>60601</ZIP>
</GetCityForecastByZIP>
</soap:Body>
</soap:Envelope>
如下圖所示:
簡單講解一下Soap/XML-RPC Data的編寫:
GetCityForecastByZIP是WebService釋出的方法;
http://ws.cdyne.com/WeatherWS/是GetCityForecastByZIP所在類的域名;
ZIP是GetCityForecastByZIP類的引數名,引數型別是int;
60601是輸入的實參。
5. 新增監聽器
右鍵單擊執行緒組 Number of Users-新增 -監聽器> 察看結果樹
6. 執行此測試計劃
現在儲存的以上測試計劃 test_webservice.jmx。執行本測試計劃使用 Run > Start 選項。
至此,整個測試計劃就完成了。
注:此事例是Jmeter自帶的一個事例,待以後工作中用到的時候,再來詳細說一說。