利用Jmeter工具實(shí)現(xiàn)一個(gè)完整的接口測(cè)試Demo
創(chuàng)建一個(gè)線程組
--????通俗的講一個(gè)線程組,可以看做一個(gè)虛擬用戶組,線程組中的每個(gè)線程都可以理解為一個(gè)虛擬用戶。
輸入線程組名字
添加一個(gè)cookie管理器
--????用來(lái)存儲(chǔ)數(shù)據(jù)交互產(chǎn)生的用戶信息,象瀏覽器一樣的存儲(chǔ)和發(fā)送Cookie,如果發(fā)送一個(gè)http請(qǐng)求,若這個(gè)響應(yīng)中包含Cookie,那么Cookie Manager就會(huì)自動(dòng)地保存這些Cookie并在所有后來(lái)發(fā)送到該站點(diǎn)的請(qǐng)求中使用這些Cookie的值。每個(gè)線程都自己存儲(chǔ)cookie的區(qū)域。在cookie manager中看不到自動(dòng)保存的cookie,我們可以在View Results Tree的Request界面看到被發(fā)送的Cookie Data。
設(shè)置你的信息頭管理器:application/json;text/plain;charset=UTF-8
添加一個(gè)用戶參數(shù),做全局變量使用。此處將url寫成全局變量,后期只需要在此處修改url,而不需要去每一個(gè)接口中單獨(dú)調(diào)整?
添加一個(gè)默認(rèn)請(qǐng)求值,該組件可以為我們的http請(qǐng)求設(shè)置默認(rèn)的值。假如,我們創(chuàng)建一個(gè)測(cè)試計(jì)劃有很多個(gè)請(qǐng)求且都是發(fā)送到相同的server,這時(shí)我們只需添加一個(gè) Http request defaults組件并設(shè)置"Server Name or IP",后面添加多個(gè)http請(qǐng)求且不設(shè)置"server name or ip",這些http請(qǐng)求會(huì)默認(rèn)使用Http request defaults組件設(shè)置的值,不需要重復(fù)填寫,而且方便維護(hù)
添加一個(gè)控制器,為你的接口腳本分層,方便后期管理
-- 邏輯控制器可以幫助用戶控制JMeter的測(cè)試邏輯,特別是何時(shí)發(fā)送請(qǐng)求。邏輯控制器可以改變其子測(cè)試元件的請(qǐng)求執(zhí)行順序。
(此處我選擇了循環(huán)控制器)
添加一個(gè)http請(qǐng)求,參數(shù)只需填寫路徑和請(qǐng)求參數(shù)即可,其余的在默認(rèn)請(qǐng)求里面已經(jīng)配置過
添加監(jiān)聽組件
-- 監(jiān)聽器提供了對(duì)JMeter在測(cè)試期間收集到的信息的訪問方法。"圖形結(jié)果"監(jiān)聽器會(huì)將系統(tǒng)響應(yīng)時(shí)長(zhǎng)繪制在一張圖片之中。"查看結(jié)果樹"監(jiān)聽器會(huì)展示采樣器請(qǐng)求和響應(yīng)的細(xì)節(jié),還可以將測(cè)試數(shù)據(jù)導(dǎo)入到文件之中,以供后續(xù)分析
執(zhí)行之前根據(jù)界面提示保存,開發(fā)后的測(cè)試腳本
執(zhí)行后查看結(jié)果試圖,可以看到服務(wù)端返回的響應(yīng)內(nèi)容
用戶可以使用斷言來(lái)檢查從服務(wù)器返回的響應(yīng)內(nèi)容。通過斷言可以測(cè)試服務(wù)器返回的響應(yīng)內(nèi)容與需求是否相符
依據(jù)以上方法繼續(xù)開發(fā)接口測(cè)試腳本。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? --- ?Jmeter 進(jìn)階即將出爐
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Auth:laoli0201