您好,登錄后才能下訂單哦!
Data-Driven Testing
當我們一遍又一遍地運行相同的查詢時,數據庫并不總是構建新的查詢,而是重新使用以前的查詢,以提高速度并優化性能。 這種緩存阻礙了我們測試我們腳本的能力。
為了避免這個問題,您可以將具有不同變量的CSV文件合并到JMeter測試中。 這些變量定義在不同的列中,這些列可以在以后在JMeter中引用。
在這里,我們正在使用我們始終使用的簡單的旅行社演示。 列是源端口和目標端口,行是端口名稱。
要合并變量,請將CSV配置元素添加到測試中。
根據您的列數填寫文件名和變量名稱。 在這個演示中,我們有兩列。
返回到采樣器,并將參數名稱從特定的更改為一般語法。 在這個例子中,從倫敦到$ {toPort}。
在運行測試之前,不要忘記更新線程組。 要確保您正在完成所有行,請更改循環數。 在這里,我們的CSV文件中有5行,所以我們經歷了5個循環。
現在,運行測試以確保它正常工作。
成功! 我們現在可以在“查看結果樹”中看到電子表格中不同的結果組合,就像我們想要的那樣。
現在讓我們繼續說斷言。
斷言對于確保測試成功顯示非常重要。
為什么不是? 因為即使JMeter將HTTP狀態代碼識別為已批準,有時顯示頁面的內容也是錯誤的。 例如,當接收到的響應代碼為200 OK時,可能會發生這種情況,但是由于登錄憑據不正確,我們仍然收到自定義錯誤。
斷言可幫助我們管理這種問題 - 它們確保在測試期間將預期內容回復給用戶。
要使用斷言,請首先確定在向用戶顯示的響應中期望找到哪些數據。 從我們的例子回到網站,我們可以看到我們的響應消息包含特定的端口。 這可能是一個問題,因為我們有5種不同的組合。
斷言確保我們正在檢查的所有值(從CSV文件)都在響應消息中,這意味著用戶正在獲得正確的響應消息。
添加一個斷言:
在這種情況下,我們添加了一個響應斷言,但有很多不同的類型:Size Assertion, comparing, looking into XML and JSON data, etc.等。
響應斷言可以應用于任何響應的組件,如報頭,響應代碼,主體,可能包含的任何非加密文檔,甚至其子樣本。 這里我們添加一個文本響應斷言。
要添加斷言,您可以從應用程序中復制值,并將其添加到“要測試的模式”部分。 在這個例子中,我們更改端口變量以反映所有的組合,正如它所說:您從$ {fromPort}到$ {toPort}的航班已被保留。
運行測試 如果斷言失敗,JMeter會將其顯示為錯誤。
在輸出中,我們可以看到測試成功,因為文本響應顯示不同的端口組合。
如果添加了斷言偵聽器,您也可以看到這些成功的結果。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。