Jmeter验证码注册接口压力测试实战
主要學(xué)習(xí)的內(nèi)容包括發(fā)送HTTP請(qǐng)求、HTTP信息頭管理器、HTTP cookies管理器、用戶定義的變量、響應(yīng)斷言、CSV數(shù)據(jù)文件設(shè)置的使用。
測(cè)試網(wǎng)址及測(cè)試接口等說明
提供的測(cè)試網(wǎng)址為:
http://www.qk365.com/security/register
使用Chrome瀏覽器,先將瀏覽器的cookies緩存清空。
清空后,打開待測(cè)試的網(wǎng)址,按F12鍵,輸入要注冊(cè)的手機(jī)號(hào)碼,如“18300987622”,點(diǎn)擊“發(fā)送驗(yàn)證碼”,可以看到請(qǐng)求的接口為:http://www.qk365.com/security/smsCode.do,請(qǐng)求的參數(shù)為json格式的數(shù)據(jù):
{"mobile":"18300987622","func":"register","isValidate":"1","memKey":"register-18300987622","memValue":"7F4BEC3A-BE2F-48C7-91ED-33887E186C87"}在知道接口后,就可以開始我們的接口測(cè)試了。
查看測(cè)試接口
jmeter進(jìn)行http post請(qǐng)求接口測(cè)試
默認(rèn)環(huán)境已經(jīng)有的條件下(這里不對(duì)jmeter運(yùn)行環(huán)境如何搭建做過多的描述,請(qǐng)自行上網(wǎng)查找環(huán)境搭建的相關(guān)資料),雙擊jmeter.bat。出現(xiàn)如下界面設(shè)置工具的顯示語言,Options→Chose Language→Chinese
完成上述步驟后,創(chuàng)建HTTP請(qǐng)求,包括:HTTP請(qǐng)求頭,HTTP請(qǐng)求體以及察看結(jié)果樹
1、在測(cè)試計(jì)劃中添加線程組
2、在線程組中添加配置元件,HTTP信息頭管理器,將剛才注冊(cè)頁面的請(qǐng)求頭選中并且復(fù)制,在HTTP信息頭管理器中單擊“Add from Clipboard”完成請(qǐng)求頭的復(fù)制
復(fù)制請(qǐng)求頭
請(qǐng)求頭添加到HTTP信息頭管理器
3、在線程組中添加HTTP請(qǐng)求,請(qǐng)求的請(qǐng)求體為圖下內(nèi)容
請(qǐng)求體
填寫HTTP POST請(qǐng)求
4、線程組添加察看樹,點(diǎn)擊啟動(dòng)按鈕,查看請(qǐng)求結(jié)果
5、為響應(yīng)結(jié)果添加斷言,只有響應(yīng)結(jié)果中包含"msg":"短信發(fā)送成功"的響應(yīng)數(shù)據(jù),這個(gè)請(qǐng)求才算是成功
Jmeter請(qǐng)求接口參數(shù)化
模擬5個(gè)用戶執(zhí)行以上的測(cè)試過程,我們發(fā)現(xiàn)只有第一次是成功的,其余的返回"msg":“短信驗(yàn)證碼發(fā)送過于頻繁”
模擬5個(gè)用戶
結(jié)果查看
發(fā)現(xiàn)原來是每個(gè)請(qǐng)求的請(qǐng)求手機(jī)號(hào)是一樣的,導(dǎo)致失敗
這時(shí)候可以使用配置元件,CSV數(shù)據(jù)文件設(shè)置每次請(qǐng)求的手機(jī)號(hào)是不同的,在這里我準(zhǔn)了一份手機(jī)號(hào)碼的excel文件,需要注意的是保存這個(gè)文件的時(shí)候要保存成.CSV格式的,這里我將這份文件放到j(luò)meter的examples目錄下
在CSV數(shù)據(jù)文件配置中填寫如下信息,然后修改驗(yàn)證碼接口中HTTP請(qǐng)求的請(qǐng)求體,最后再執(zhí)行一次,發(fā)現(xiàn)每次請(qǐng)求使用的手機(jī)號(hào)是不同的,并且請(qǐng)求成功
配置填寫
修改請(qǐng)求體
請(qǐng)求結(jié)果
Jmeter請(qǐng)求接口壓力測(cè)試
修改線程組參數(shù),添加聚合報(bào)告等,對(duì)接口進(jìn)行壓力測(cè),這里可以把察看結(jié)果樹禁用了,因?yàn)樵谡?qǐng)求很多的情況下,會(huì)影響工具性能。最后等結(jié)果
需要注意的是啟動(dòng)jmeter.bat提示的那段話,壓力測(cè)試要用非界面模式,界面模式用來生成腳本,調(diào)試沒有問題了,再進(jìn)行非界面的壓力測(cè)試
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報(bào)告生成
這部分內(nèi)容網(wǎng)上能查詢包相關(guān)信息,這里不進(jìn)行講解。
寫在最后
這個(gè)平臺(tái)可以頻繁的刷驗(yàn)證碼接口,這本身就是一個(gè)bug。前端的滑動(dòng)驗(yàn)證功能就是形同虛設(shè)的。
資源分享
下方這份完整的軟件測(cè)試視頻學(xué)習(xí)教程已經(jīng)上傳CSDN官方認(rèn)證的二維碼,朋友們?nèi)绻枰梢宰孕忻赓M(fèi)領(lǐng)取 【保證100%免費(fèi)】
總結(jié)
以上是生活随笔為你收集整理的Jmeter验证码注册接口压力测试实战的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java.lang.NoSuchMeth
- 下一篇: Qt中Widget Aplication