1. 程式人生 > >LoadRunner測試webservice介面-方法二(模擬http請求)

LoadRunner測試webservice介面-方法二(模擬http請求)

使用webservice協議測試介面,在場景執行時,最多併發100的虛擬使用者數,有侷限。因此這裡需要變通一下,使用http協議的方式來測試webservice介面。在測試之前,首先要確認待測試的介面是不是http介面,如果不是,不能選擇以下方法。另外,我們可以用這3個函式
web_custom_request()、 web_submit_data()、web_submit_form()。
    接下來確認介面的請求方法,如果是GET方法,用
web_submit_form()函式 ;如果是POST方法,用web_submit_data()。
    web_custom_request() 函式支援GET和POST方法。所以接下來的示例,我採用
web_custom_request() 函式。

1、開啟VuGen,選擇web(HTTP/HTML)協議
圖片
注:開啟VuGen介面後,不進行指令碼錄製

2、手工完善指令碼
    2.1插入
web_custom_request() 函式
圖片
    注意:點選Insert-New Step的時候,滑鼠一定要聚焦在Action(){};中
圖片
 
 

注意:介面的完整入參,可以通過SoapUI來獲取。直接複製
SoapUI整個頁面的入參即可。另外,如果能夠手工寫web_custom_request()函式,可以直接在Action(){};中手工書寫,不需要通過插入的方式插入到Action(){};中

      2
.2 完善
web_custom_request() 函式
        添加了的
web_custom_request() 函式如下圖所示
圖片
    我們需要對函式進行處理一下,才能編譯成功並且執行。遇到雙引號,要用轉譯符\轉譯。如果不把整個入參放到一行,分為多行放置的話,每一行起始和結尾都要加上雙引號,如下圖所示:
圖片 

    在網上也有看到,有的人在web_custom_request() 函式前面加了web_add_header()函式。我後面測試了下,發現不加也是可以執行成功的。所以web_add_header()函式新增與否,自行選擇。如下圖所示:
圖片


3、加入檢查點,判斷請求是否成功
    通過這種方式測試介面,是不會有出參返回的。所以我們需要通過檢查出參中的資訊來確定是否請求成功了

圖片
注意:這裡由於編碼方式的原因,設定檢查點的時候,對檢查點內容需要轉換一下編碼格式。所以我用了lr_convert_string_encoding()編碼轉換函式。
    
4、其他說明2        
    web_custom_request()的返回值是0或者1,0表示請求成功,1表示請求失敗。
    
可通過如下圖所示,獲取web_custom_request()的返回值:
圖片