目前創(chuàng)新互聯(lián)建站已為上千的企業(yè)提供了網(wǎng)站建設(shè)、域名、虛擬主機、網(wǎng)站托管運營、企業(yè)網(wǎng)站設(shè)計、樺南網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
前言:
本文主要針對http接口進行測試,使用Jmeter工具實現(xiàn)。
Jmter工具設(shè)計之初是用于做性能測試的,它在實現(xiàn)對各種接口的調(diào)用方面已經(jīng)做的比較成熟,因此,本次直接使用Jmeter工具來完成對Http接口的測試。
一、開發(fā)接口測試案例的整體方案:
第一步:我們要分析出測試需求,并拿到開發(fā)提供的接口說明文檔;
第二步:從接口說明文檔中整理出接口測試案例,里面要包括詳細的入?yún)⒑统鰠?shù)據(jù)以及明確的格式和檢查點。
第三步:和開發(fā)一起對接口測試案例進行評審。
第四步:結(jié)合開發(fā)庫,準備接口測試案例中的入?yún)?shù)據(jù)和出參數(shù)據(jù),并整理成csv格式的文件。
第五步:結(jié)合接口測試案例文檔和csv格式的數(shù)據(jù)文檔,做接口測試案例的自動化案例開發(fā)。
二、接口自動化適用場景:
目前設(shè)計的自動化接口測試案例有兩個運行場景:
1. 測試前置、開發(fā)自測:一個新的自動化接口測試案例開發(fā)完成后,直接發(fā)給接口對應的開發(fā),安排在開發(fā)本地環(huán)境執(zhí)行,一旦開發(fā)確認完成接口開發(fā),就開始執(zhí)行接 口測試案例,基本上可以實時拿到測試結(jié)果,方便開發(fā)快速做出判斷。【開發(fā)本地運行的方式就是打開JMeter工具,導入JMX文件,開始執(zhí)行可。】
2. 回歸測試:開發(fā)本地測試通過后,或整個需求手工測試通過后,把自動化的接口測試案例做分類整理,挑選出需要納入到回歸測試中的案例,在持續(xù)集成環(huán)境重新準 備測試數(shù)據(jù),并把案例納入到持續(xù)集成的job中來,這些用于回歸的接口測試案例需要配置到持續(xù)集成平臺自動運行。
三、接口測試環(huán)境準備
Jdk1.6或以上:http://www.oracle.com/technetwork/java/javase/downloads/index.html
Jmeter,下載址址:http://jmeter.apache.org/download_jmeter.cgi
插件的下載安裝地址:http://www.jmeter-plugins.org/
四、創(chuàng)建工程:
1、打開Jmeter:下載好Jmeter后,雙擊bin目錄下的jmeter.bat文件:
2、添加線程組:在“測試計劃”上點擊鼠標右鍵-->添加-->threads(Users)-->線程組,添加測試場景設(shè)置組件,接口測試中一般設(shè)置為1個“線程數(shù)”,根據(jù)測試數(shù)據(jù)的個數(shù)設(shè)定“循環(huán)次數(shù)”。
3、添加“HTTP Cookie管理器”:
4、添加“Http請求默認值”組件,當被測系統(tǒng)有唯一的訪問域名和端口時,這個組件很好用:
5、在“HTTP 請求默認值”組件配置頁面,填寫被測系統(tǒng)的域名和端口,http請求的實現(xiàn)包版本以及具體協(xié)議類型,線程組里的所有“HTTP Sampler”可默認使用此設(shè)置。
6、在“線程組”里添加“HTTP 請求”的Sampler
7、在HTTP請求設(shè)置頁面,錄入被測接口的詳細信息,包括請求路徑,對應的請求方法,以及隨請求一起發(fā)送的參數(shù)列表:
8、設(shè)置檢查點:在被測接口對應的“HTTP 請求”上,添加“響應斷言”
9、在設(shè)置頁面上添加對相應結(jié)果的正則表達式存在性判斷即可:
10、添加監(jiān)聽器:方便查看運行后的結(jié)果
運行結(jié)果:
上述步驟完成了一個簡單測試案例的創(chuàng)建,復雜測試案例均在此基礎(chǔ)上擴展完成。使用Jmeter工具開發(fā)的接口測試案例,一個子系統(tǒng)建議放在同一個 “測試計劃”中,流程測試可以通過“線程組”來區(qū)分,這樣也便于設(shè)定不同的測試數(shù)據(jù)個數(shù)。比較獨立的接口,可以統(tǒng)一放在一個線程組內(nèi),順序完成測試?! ?/p>
流程性接口的測試:如果要測試的接口可以組成一個流程,只需要順序添加多個“HTTP 請求”的Sampler,各請求之間可以提取需要在上下文傳遞的數(shù)據(jù)作為參數(shù),以保證流程中數(shù)據(jù)的一致性。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。