1 背景
本文要介紹的環(huán)境在我司已經(jīng)投入使用,舉個(gè)簡(jiǎn)單的真實(shí)使用場(chǎng)景,開發(fā)提供了300多個(gè)API,每個(gè)API都有各種參數(shù),所以我們會(huì)先在postman中為這300多個(gè)API編寫300*n個(gè)testcase,然后在jenkins上跑;到此有人可能會(huì)問,都在postman中寫好testcase了,怎么還要去jenkins中跑,豈不是多此一舉?答案是否定的,試想,當(dāng)開發(fā)一直在不停的維護(hù)這300多個(gè)接口時(shí),難道需要開發(fā)每次都告訴我們測(cè)試人員該進(jìn)行測(cè)試了嗎?顯然不是的,這就是jenkins+postman的自動(dòng)化之處了,開發(fā)可以實(shí)現(xiàn)一個(gè)jenkins的上游job腳本(當(dāng)接口代碼有修改時(shí)觸發(fā)我們這個(gè)testcase的下游job),當(dāng)他們每次修改維護(hù)接口時(shí)不需要進(jìn)行任何操作與交流,代碼一旦提交jenkins就能自動(dòng)化個(gè)性化地開始執(zhí)行我們預(yù)定于的那些testcase了,然后我們只用關(guān)注最終的測(cè)試結(jié)果郵件即可,這樣大大的提高了開發(fā)測(cè)試效率。
鑒于國(guó)內(nèi)很少測(cè)試工程師用postman來測(cè)試API,于是寫本篇文章分享下。前一個(gè)月用postman寫了API自動(dòng)化測(cè)試腳本,并用newman命令行運(yùn)行所有測(cè)試案例,覺得沒有達(dá)到全自動(dòng)化測(cè)試,于是配置jenkins job來運(yùn)行API自動(dòng)化測(cè)試腳本,使API達(dá)到完全自動(dòng)化測(cè)試!
2 環(huán)境配置與運(yùn)行
這部分依次展示了如何安裝設(shè)置及運(yùn)行一個(gè)基于Postman的自動(dòng)化工具,具體如下。
2.1 postman 安裝
在谷歌瀏覽器下載postman插件,并安裝,下載路徑(Chrome應(yīng)用商店需要翻墻):chrome.google.com/webstore/se…?。這個(gè)比較小兒科,一句話帶過就行了。(不過要注意,建議最好下載應(yīng)用,而不是插件,因?yàn)楣δ軓?qiáng)大一些)。
2.2 newman 的安裝
第一步,安裝nodejs。?
第二步,在nodejs命令行安裝newman,即命令行輸入如下命令:
npm install -g newman復(fù)制代碼
2.3 jenkins 安裝
去官網(wǎng)(jenkins.io/index.html)下載jenkins,各種下一步點(diǎn)擊安即可(官網(wǎng)wiki等目錄下一般都有不同平臺(tái)的安裝文檔,依據(jù)文檔安裝即可)。
2.4 postman 使用與導(dǎo)出
第一步,創(chuàng)建一個(gè)放置testCase的文件夾Test,如下:?
第二步,創(chuàng)建第一個(gè)testcase,點(diǎn)擊下圖1處的加號(hào)新增一個(gè)case,在2處選擇你的API請(qǐng)求方式,在3處寫上api請(qǐng)求的url,在4處填寫該請(qǐng)求的相關(guān)參數(shù),具體如下圖:?
下面展示了一個(gè)依據(jù)上圖步驟配置后的郵箱地址請(qǐng)求示例,如圖:?
第三步,對(duì)一個(gè)testCase的判斷可以寫在如下所示位置(判斷的意思是指譬如返回的狀態(tài)碼、內(nèi)容等是不是你期望的值):?
第四步,點(diǎn)擊send按鈕即可發(fā)送一個(gè)請(qǐng)求,同時(shí)可以看到請(qǐng)求的結(jié)果,如圖:?
當(dāng)然,一般Test目錄可能有很多的testCase,這種情況下我們可以選中文件夾,然后點(diǎn)擊start Test按鈕,這樣就會(huì)自動(dòng)執(zhí)行文件夾內(nèi)的所有testcase并顯示測(cè)試結(jié)果,如圖:?
第五步,導(dǎo)出上面在postman中寫的testCase文件和設(shè)置的環(huán)境變量文件(點(diǎn)擊下圖1處導(dǎo)出testCase文件,點(diǎn)擊下圖2處導(dǎo)出環(huán)境變量文件)。這是最重要最核心的一步,自動(dòng)化的源頭依賴于此步,請(qǐng)務(wù)必注意。?
至此postman的基本使用和導(dǎo)出就完事了,關(guān)于postman的其他主題設(shè)置、登錄等等其他功能請(qǐng)自行摸索,其實(shí)很多開發(fā)也非常喜歡用postman,譬如移動(dòng)端開發(fā)喜歡用postman去請(qǐng)求服務(wù)端提供的API,以此來簡(jiǎn)單快捷驗(yàn)證接口的正確性和Json、xml等數(shù)據(jù)格式。
2.5 jenkins 配置
在jenkins上配置如下圖,這個(gè)路徑就是上面通過postman導(dǎo)出文件的路徑。?
剩下的就是jenkins的常規(guī)操作了,譬如設(shè)置好郵箱后點(diǎn)擊立即構(gòu)建或者設(shè)置多久構(gòu)建一次,這樣自動(dòng)化就跑起來了,等待自動(dòng)化測(cè)試結(jié)束后我們就可以收到測(cè)試成功或者失敗的測(cè)試報(bào)告郵件(依賴于你的設(shè)置)了。
通過上面這些步驟即可完成基于postman和Jenkins的自動(dòng)化接口測(cè)試。
3 總結(jié)
可以看見,其實(shí)postman就是一個(gè)GUI的工具,我們完全可以手動(dòng)用它驗(yàn)證接口,但是當(dāng)有海量接口且有序執(zhí)行時(shí)就比較麻煩了,所以我們可以通過postman將所有接口的測(cè)試案例進(jìn)行編寫實(shí)現(xiàn)及導(dǎo)出;而由于postman導(dǎo)出的文件想在jenkins上通過命令行執(zhí)行依賴于newman環(huán)境,所以我們安裝配置了newman,以此就能解決jenkins只能執(zhí)行命令行或者腳本的弊端;他們幾個(gè)的結(jié)合就實(shí)現(xiàn)了一次測(cè)試案例的編寫實(shí)現(xiàn)個(gè)性化自動(dòng)化的接口測(cè)試。
?如果文章對(duì)你有幫助,記得點(diǎn)贊,收藏,加關(guān)注。會(huì)不定期分享一些干貨哦......
最后感謝每一個(gè)認(rèn)真閱讀我文章的人,看著粉絲一路的上漲和關(guān)注,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:
這些資料,對(duì)于想做【軟件測(cè)試】的朋友來說應(yīng)該是最全面最完整的備戰(zhàn)倉(cāng)庫(kù),這個(gè)倉(cāng)庫(kù)也陪伴我走過了最艱難的路程,希望也能幫助到你!凡事要趁早,特別是技術(shù)行業(yè),一定要提升技術(shù)功底。希望對(duì)大家有所幫助……加入我的學(xué)習(xí)交流群一起學(xué)習(xí)交流討論把?。。?!??文章來源:http://www.zghlxwxcb.cn/news/detail-406795.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-406795.html
到了這里,關(guān)于【建議收藏】Jenkins+postman+newman之API全自動(dòng)化測(cè)試的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!