Jmeter(三十) - 從入門到精通 - Jmeter Http協議錄製指令碼工具-Badboy3(詳解教程)
1.簡介
Badboy為方便自動化資料靈活性,以及指令碼的重用,減少工作量;為此提供了指令碼引數化的功能,這一篇文章巨集哥以度娘搜尋的關鍵字“北京-巨集哥”進行引數化為例,巨集哥帶領你們實戰一下如何使用Badboy的引數化功能。
2.指令碼錄製
經過上一篇文章的學習想必大家對Badboy的指令碼錄製應該已經不陌生了吧,可以自己錄製指令碼了吧。不會的巨集哥在這裡再演示一遍,具體操作步驟如下:
1. 輸入:https://www.baidu.com/到Badboy的URL的地址輸入欄中(browser bar),如下圖所示:
2. 點選開始錄製按鈕,開始錄製,然後再點選前進圖示訪問到度娘,如下圖所示:
3. 在度孃的搜尋輸入框中輸入“北京-巨集哥”,點選百度一下,如下圖所示:
4. 頁面展開搜尋結果後,如下圖所示:
5. 點選browser bar的後退, 回到https://www.baidu.com/,如下圖所示:
6. 停止錄製, 展開指令碼樹,點選Variable 標籤(顯示Tab步驟:點選View—>Summary View)
從上圖,可以觀察到巨集哥輸入“wd=鍖椾含-瀹忓摜”已經被記錄下來,雖然是中文亂碼,但是確實是被記錄下了。實際工作中我們遇到的問題是:不需要再次錄製或者是重新設計新指令碼,測試搜尋其他的內容。
Badboy的指令碼引數化為我們提供瞭解決方案,下邊巨集哥就介紹一下如何引數化。
3.Badboy引數化
3.1增加引數
1. 切換到Variable的按鈕中,在空白處右鍵 ,彈出如下視窗,如下圖所示:
2. 點選“Add Varialbe”,彈出如下視窗,輸入變數名“Searchcontent”,如下圖所示:
3. 由於這個用例是測有效類,那麼我們加入有效測試資料,如北京巨集哥,巨集哥,北京-巨集哥.....等等,如下圖所示:
4. 點選Ok,引數Searchcontent已經儲存成功,並顯示到Variable列表中
3.2將指令碼中的值進行引數化
1. 右擊指令碼樹中的wd,選擇Properties,如下圖所示:
2. 將Value繫結引數Searchcontent,格式為"${variable name}" 。
注意:當我們想固定一個引數值時,也可以使用Variable list的索引用法, 如巨集哥希望指令碼每次都查:巨集哥,應Value=${Searchcontent[2]},list的索引從0開始。
3. 點選“確定”按鈕,觀察指令碼樹的變化,sw的值已經被引數化,如下圖所示:
3.3設定執行方式
1. 雙擊Step “Variable search”, 或右擊選擇Properties, 設定運作為以Searchcontent為迴圈方式,點選“確定”,如下圖所示:
2. 選擇Variable Search,點選“ ”,執行指令碼,如下圖所示:
3.仔細觀察指令碼執行情況, 分別按照輸入的三個引數值進行了搜尋, 證明巨集哥的引數化已經成功實現。
4.小結
這裡演示時候巨集哥本來是打算用部落格園來實戰演示的,但是演示過程中發現由於搜尋的時候需要輸入驗證碼,所以在Badboy中的搜尋結果什麼也沒有。後來巨集哥發現登入後搜尋不需要驗證碼,但是登入的時候遇到同樣的問題,因此換了度娘來演示一下。其實淘寶、天貓和京東都可以演示