Visual Studio的Web Performance Test提取規則詳解(2)


總結

Visual Studio的Web Performance Test是基於HTTP協議層的,它不依賴於瀏覽器,通過直接接收,發送HTTP包來和Web服務器交互。Web Performance Test發送和接收的一系列請求和響應之間存在相關性,例如,用戶登錄后,SID被傳遞給客戶端,下一次請求時,需要把SID發送到服務器。因此,Web Perfomance Test 定義了多種提取規則,幫助從服務器響應中提取信息,用於之后的請求。或者保存起來,作為測試結果的一部分。

 

 

Web Performance Test提供多種提取規則,以下表格來自MSDN

提取規則的類型 說明
Selected Option 提取列表或組合框中的選定文本。
Tag Inner Text 從指定的 HTML 標記中提取內部文本。
Extract Attribute Value 從指定的 HTML 標記中提取特性的值。 有關以下內容的更多信息使用提取特性值規則的更多信息,請參見演練:向 Web 性能測試添加驗證規則和提取規則。
Extract Form Field 提取響應中指定窗體字段的值。
Extract HTTP Header 提取 HTTP 標頭的值。
Extract Regular Expression 從與正則表達式相匹配的響應中提取文本。
Extract Text 從響應中提取文本。
Extract Hidden Fields 從響應中提取所有的隱藏字段。

 

上文中,我們講解了“Extract Hidden Fields”規則。本文將繼續講解其他提取規則。

 

例子

本文我們以一個Asp.net的例子講解其他規則,該例子參考了Advanced capability in Web Performance Test of VS2010一文。讀者可以在這里下載該例子的代碼。

image

 

這是一個簡單的計算器程序,提供4則運算。

 

我們設計Case如下:

1,計算 2+1=3;

2,循環計算,3+2=5,5+3=8,8+5=13 …

 

首先,我們進行錄制,錄制完成后,我們可以看到提交的表單包含參數如下:

image

 

根據我們設計的Case,除了2+1外,后面的計算我們需要提取Num1TextBox中的值填充在Num2TextBox中,把結果中的值提取出來填充在Num1TextBox中,再提交表單。

 

"Extract Attribute Value“提取規則

我們通過"Extract Attribute Value”規則從web響應中抽取Num1TextBox提取值:

image

 

屬性填充如下所示:

image

其中,Tag Name決定要提取的控件類型,Attribute Name決定要提取哪個屬性的值,Match Attribute NameMatch Attribute Value用控件的某個屬性的值進行匹配。

 

"Extract Text”提取規則

我們通過"Extract Text”規則從web響應中抽取ResultLabel的值:

image

 

屬性填充如下:

image

規則將提取Starts WithEnds With之間的文本。

 

綁定提取的參數

現在,我們已經為第一次提交的表單(也就是2+1=3)的響應添加了2條提取規則:

image

 

接下來,我們需要把規則提取的參數綁定到下一次表單的post參數中:

image

這時,執行case,就可以得到3+2=5。

 

添加循環

為了達到循環計算的效果,如計算3+2=5,5+3=8,8+5=13,13+8=21 ….需要添加一個循環:

image

 

為了對循環中的每次提交后的響應都進行提取,我們需要把之前添加的兩個規則拷貝到循環內的URL中,如上圖所示。

 

循環執行9次后的結果:

image

 

其他提取規則

"Selected Option"提取規則

在上面的例子中,如果我們希望在循環內,計算符號不使用硬編碼的“+”號,而是使用上次請求選中的符號,需要使用"Selected Option"提取規則,該規則將提取select控件當前選中的值,屬性配置如下:

image

 

其中,"Select Tag Name”是select控件的ID或Name。

 

"Extract Regular Expression"提取規則

上文中提取Result參數,如果我們使用正則表達式規則抽取會怎么樣呢? 如:

image

我們發現,抽取的Result值將會是"等於5。",而不是"5",並不適用上面的例子。

 

總結

目前為止,我們講解了5種取規則,剩下的幾種就不再一一介紹。下一講,我們將介紹如何使用自定義規則。

 

本文由知平軟件劉斌華原創,轉載請注明出處。

知平軟件致力於移動平台自動化測試技術的研究,我們希望通過向社區貢獻知識和開源項目,來促進行業和自身的發展。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM