Jmeter验证码注册接口压力测试实战
主要學習的內容包括發送HTTP請求、HTTP信息頭管理器、HTTP cookies管理器、用戶定義的變量、響應斷言、CSV數據文件設置的使用。
測試網址及測試接口等說明
提供的測試網址為:
http://www.qk365.com/security/register
使用Chrome瀏覽器,先將瀏覽器的cookies緩存清空。
清空后,打開待測試的網址,按F12鍵,輸入要注冊的手機號碼,如“18300987622”,點擊“發送驗證碼”,可以看到請求的接口為:http://www.qk365.com/security/smsCode.do,請求的參數為json格式的數據:
{"mobile":"18300987622","func":"register","isValidate":"1","memKey":"register-18300987622","memValue":"7F4BEC3A-BE2F-48C7-91ED-33887E186C87"}在知道接口后,就可以開始我們的接口測試了。
查看測試接口
jmeter進行http post請求接口測試
默認環境已經有的條件下(這里不對jmeter運行環境如何搭建做過多的描述,請自行上網查找環境搭建的相關資料),雙擊jmeter.bat。出現如下界面設置工具的顯示語言,Options→Chose Language→Chinese
完成上述步驟后,創建HTTP請求,包括:HTTP請求頭,HTTP請求體以及察看結果樹
1、在測試計劃中添加線程組
2、在線程組中添加配置元件,HTTP信息頭管理器,將剛才注冊頁面的請求頭選中并且復制,在HTTP信息頭管理器中單擊“Add from Clipboard”完成請求頭的復制
復制請求頭
請求頭添加到HTTP信息頭管理器
3、在線程組中添加HTTP請求,請求的請求體為圖下內容
請求體
填寫HTTP POST請求
4、線程組添加察看樹,點擊啟動按鈕,查看請求結果
5、為響應結果添加斷言,只有響應結果中包含"msg":"短信發送成功"的響應數據,這個請求才算是成功
Jmeter請求接口參數化
模擬5個用戶執行以上的測試過程,我們發現只有第一次是成功的,其余的返回"msg":“短信驗證碼發送過于頻繁”
模擬5個用戶
結果查看
發現原來是每個請求的請求手機號是一樣的,導致失敗
這時候可以使用配置元件,CSV數據文件設置每次請求的手機號是不同的,在這里我準了一份手機號碼的excel文件,需要注意的是保存這個文件的時候要保存成.CSV格式的,這里我將這份文件放到jmeter的examples目錄下
在CSV數據文件配置中填寫如下信息,然后修改驗證碼接口中HTTP請求的請求體,最后再執行一次,發現每次請求使用的手機號是不同的,并且請求成功
配置填寫
修改請求體
請求結果
Jmeter請求接口壓力測試
修改線程組參數,添加聚合報告等,對接口進行壓力測,這里可以把察看結果樹禁用了,因為在請求很多的情況下,會影響工具性能。最后等結果
需要注意的是啟動jmeter.bat提示的那段話,壓力測試要用非界面模式,界面模式用來生成腳本,調試沒有問題了,再進行非界面的壓力測試
May 22, 2018 9:42:40 PM java.util.prefs.WindowsPreferences <init> WARNING: Could not open/create prefs root node Software\JavaSoft\Prefs at root 0x80000002. Windows RegCreateKeyEx(...) returned error code 5. ============================================================ Don't use GUI mode for load testing !, only for Test creation and Test debugging. For load testing, use NON GUI Mode: jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder] & increase Java Heap to meet your test requirements: Modify current env variable HEAP="-Xms1g -Xmx1g -XX:MaxMetaspaceSize=256m" in the jmeter batch file Check : https://jmeter.apache.org/usermanual/best-practices.html ============================================================Jmeter報告生成
這部分內容網上能查詢包相關信息,這里不進行講解。
寫在最后
這個平臺可以頻繁的刷驗證碼接口,這本身就是一個bug。前端的滑動驗證功能就是形同虛設的。
資源分享
下方這份完整的軟件測試視頻學習教程已經上傳CSDN官方認證的二維碼,朋友們如果需要可以自行免費領取 【保證100%免費】
總結
以上是生活随笔為你收集整理的Jmeter验证码注册接口压力测试实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java.lang.NoSuchMeth
- 下一篇: Qt中Widget Aplication