Loadrunner12中針對WebServices協議的三種腳本開發模式

Loadrunner12中針對WebServices協議的三種腳本開發模式

一、webservices協議簡介

webservices是建立可交互操作的分佈式應用程序的新平臺,它通過一系列的標準和協議來保證程序之間的動態連接。其中最基本的協議包括soap,wsdl,uddi.

1、SOAP(simple object access protocl)

SOAP是消息傳遞協議,它規定了web services之間如何傳遞消息。

SOAP基於xml和xsd,xml是soap的數據編碼方式。

2、WSDL

(web services Description Language)

WSDL是web services的定義語言,和soap一起構成web服務的核心結構單元。

wsdl協議規定了有關webservices描述的標準。

3、UDDI

UDDI是訪問登記的標準,它建立了一個平臺獨立,開放的框架,通過英特網來描述服務,發現業務並整合業務服務。

簡單來說,UDDI用於集中存放和查找wsdl描述文件,起著目錄服務器的作用。

二、webservices協議腳本

我們在性能測試的工作中,難免會遇到webservices協議的接口。

這裡我簡單介紹一下用loadrunner12來開發webservices協議腳本的三種模式,咱們就以天氣預報的網站來為例吧:

1、web_service_call模式

◆ 啟動“virtual user Generator”

新建“web services”虛擬用戶

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 選擇上方SOA Tool中的Add Service Call

如下圖:

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 彈出New Web Service Call對話框

選擇Service-import service

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 輸入要測試的網址

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 下面選擇Operation

輸入城市,以及設置獲取返回值參數。

Loadrunner12中針對WebServices協議的三種腳本開發模式


Loadrunner12中針對WebServices協議的三種腳本開發模式


Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 點擊OK後,得到下面的腳本

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 然後做參數化,斷言

Loadrunner12中針對WebServices協議的三種腳本開發模式


Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 最後保存,設置日誌級別,然後Replay我們的腳本

Loadrunner12中針對WebServices協議的三種腳本開發模式

2、soap_request模式

◆ 打開WeatherWebService網站

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 複製上面的代碼,在notepad++中新建一個文件,將代碼粘貼上去,保存到D盤。

然後在loadrunner12中,點擊下圖的import SOAP。

Loadrunner12中針對WebServices協議的三種腳本開發模式


Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 在對話框中,我們輸入保存的xml文件地址。

輸入URL,URL=http://{Host}+{POST}

參數從上圖所示取,輸入對應的SOAPAction,具體如下圖所示

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 點擊OK,生成下面的腳本

Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 這裡有個難題就是如何做xml斷言?

我們看一下下圖的響應示例:

Loadrunner12中針對WebServices協議的三種腳本開發模式

這裡引入lr_xml_get_values函數來獲取xml的返回值。

Loadrunner12中針對WebServices協議的三種腳本開發模式

XPath query中填入city值的xpath定位的絕對路徑:

/Envelope/Body/getWeatherbyCityNameResponse/getWeatherbyCityNameResult/string[2]

◆ 最後加入事物函數,做斷言

Loadrunner12中針對WebServices協議的三種腳本開發模式


Loadrunner12中針對WebServices協議的三種腳本開發模式

◆ 保存後點擊Replay,得到下面的結果:

Loadrunner12中針對WebServices協議的三種腳本開發模式

3、web_custom_request模式

Loadrunner12中針對WebServices協議的三種腳本開發模式

輸入對應的URL,body裡面輸入SOAP的請求體。

點擊確定,最後生成如下的代碼

Loadrunner12中針對WebServices協議的三種腳本開發模式

後面做腳本強化就行了。


分享到:


相關文章: