文章介紹了如何使用JMeter進(jìn)行注冊接口測試,包括斷言設(shè)置、JSON斷言配置和結(jié)果查看。通過斷言處理響應(yīng)數(shù)據(jù),確保測試結(jié)果準(zhǔn)確性,如賬號(hào)已存在時(shí)顯示注冊失敗。
聲明:本文所記錄的僅本次操作學(xué)習(xí)到的知識(shí)點(diǎn),其中商城IP錯(cuò)誤,請自行更改。
1.認(rèn)識(shí)JMeter
(1)斷言
預(yù)期結(jié)果和實(shí)際結(jié)果的比較,如果不一樣,斷言失敗。
2.注冊
(1)直接復(fù)制【登錄】粘貼一下。
![]()
(2)修改請求名稱【注冊】,修改【路徑】,其它不變。
![]()
(3)禁用【登錄】,點(diǎn)【執(zhí)行】后查看【查看結(jié)果樹】。
![]()
![]()
3.?dāng)嘌?/span>
??斷言是為了比較預(yù)期結(jié)果與實(shí)際結(jié)果是否一致,如果一致,則斷言運(yùn)行成功,不會(huì)報(bào)錯(cuò)。如果不一致,則斷言運(yùn)行會(huì)報(bào)錯(cuò)。為什么要設(shè)置斷言?因?yàn)橛行┙涌谠趫?zhí)行時(shí),結(jié)果樹會(huì)顯示執(zhí)行成功,實(shí)際返回的響應(yīng)數(shù)據(jù)卻是失敗的。
??注冊時(shí),已注冊的賬號(hào)再次跑注冊接口,查看結(jié)果樹,注冊接口執(zhí)行顯示成功,響應(yīng)數(shù)據(jù)返回結(jié)果“賬號(hào)已存在”。實(shí)際上注冊是失敗的,但是通過這樣的結(jié)果樹并不能知曉是注冊失敗,所以需要斷言處理一下。給斷言設(shè)置預(yù)期結(jié)果與實(shí)際結(jié)果是否一致,如果一致,則表示真的執(zhí)行成功。如果不一致,則實(shí)際上是執(zhí)行失敗。結(jié)果樹最終顯示:斷言失敗,注冊也會(huì)顯示失敗。這里選擇的是【JSON斷言】。
(1)新建【JSON斷言】
【添加】【斷言】【JSON斷言】
![]()
(2)設(shè)置【JSON斷言】
① 參數(shù)設(shè)置:通過結(jié)果樹中的【JSON Path Tester】查看響應(yīng)數(shù)據(jù)的JSON格式。再通過 $.關(guān)鍵字 的方式獲取關(guān)鍵字的返回值。多層的字段值獲取,也是通過多層.進(jìn)去的,例如 $.關(guān)鍵字.關(guān)鍵字(JSONPATH時(shí)會(huì)細(xì)講)。
![]()
② 斷言json路徑存在:$.msg
③ 附加斷言值:勾選(不勾選就無法填寫期望值,不填期望值就無法與實(shí)際值進(jìn)行對比)。
④ 作為正則表達(dá)式匹配:默認(rèn)勾選,不變。
⑤ 期望值:注冊成功。
![]()
4.查看結(jié)果樹
(1)新建【查看結(jié)果樹】,啟動(dòng)后查看結(jié)果樹面板。
(2)【注冊】結(jié)果顯示失敗,【JSON斷言】結(jié)果顯示:
① 斷言錯(cuò)誤:錯(cuò)誤
② 斷言失敗:真
③ 斷言失敗消息:json路徑'$.Msg '期望匹配正則表達(dá)式:'注冊成功',但不匹配:'賬號(hào)已存在'。
(3)如果查看結(jié)果樹中不想要保留上次執(zhí)行的結(jié)果,可以點(diǎn)擊菜單欄中的【清除】/【全部清除】按鈕。
![]()
![]()