為了提高回歸效率及保證版本質量,很多公司都在做自動化測試,特別是接口自動化。接口自動化測試框架很多,有寫代碼的,也有不寫代碼的,我覺得沒有誰比誰好,誰比誰高級之說,只要適用就好。
今天給大家分享一個不寫代碼的接口自動化測試框架:jmeter + ant + jenkins,原理:jenkins驅動ant執行,ant驅動jmeter執行,這個框架在一些公司應用得還不錯哦。雖然不需要寫代碼,但是jmeter接口腳本必須熟練,可以在公眾號上參考:測試必備:jmeter測試http協議接口的各種傳參方式
這里為了演示方便,就用windows環境,linux版:jmeter + ant + jenkins,請參考:
https://www.cnblogs.com/uncleyong/p/10766480.html
溫馨提示:本文涉及的安裝包及各種文件獲取方式:關注公眾號『全棧測試筆記』聯系作者獲取
環境准備
前提條件:windows安裝了jmeter、ant、jenkins
jmeter安裝:https://www.cnblogs.com/uncleyong/p/10731334.html
ant安裝:https://www.cnblogs.com/uncleyong/p/10743183.html
jenkins安裝:https://www.cnblogs.com/uncleyong/p/10742867.html
ant調用jmeter腳本(通過ant命令)
准備一個jmeter接口腳本
get請求,訪問:www.cnblogs.com/UncleYong/
將Jmeter所在目錄下extras子目錄(D:\apache-jmeter-5.1.1\extras)里的ant-JMeter-1.1.1.jar復制到ant的lib目錄下(D:\apache-ant-1.9.14\lib),這樣ant運行時才能找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"這個類,從而成功觸發JMeter腳本
將jmeter.results.shanhe.me.xsl放到jmeter的extras目錄下
修改jmeter目錄(D:\apache-jmeter-5.1.1\bin)下的jmeter.properties,去掉jmeter.save.saveservice.output_format前的注釋並將值設置為xml
創建目錄
uncleyong
--jmeter_script
--result
--html
--jtl
build.xml
build.xml是ant的核心文件,build.xml文件的配置,見里面說明
jmeter_script放剛才准備的jmeter腳本
html存放html結果,jtl存放jtl結果
在build.xm目錄,cmd命令行中執行ant命令
執行成功
生成的jtl報告
打開jtl文件,點擊【瀏覽...】
選擇生成的jtl文件,在響應數據中可以看到請求的返回結果
生成的html報告
很多沒有值
修改jmeter目錄(D:\apache-jmeter-5.1.1\bin)下的jmeter.properties
重新執行ant
相比之前增加很多內容
build.xml中,報告模板文件改為下面這個
執行ant,生成報告
報告內容還是筆記簡單
build.xml文件替換為另外一個,且新的build.xml中,報告模板文件改為這個:jmeter-results-detail-report_21__py.xsl,build.xml文件替換為另外一個,且新的build.xml中,報告模板文件改為這個:jmeter-results-detail-report_21__py.xsl,這兩個文件都來源於Q群652122175群友分享
執行ant,打開生成的報告,內容更豐富了
ant調用jmeter腳本(通過jenkins)
點擊【系統管理】
插件管理中安裝ant插件
點擊【全局工具配置】
添加ant,Name隨便填寫,ANT_HOMEt填寫自己的ant安裝目錄
添加jdk
新建job
輸入名稱,選擇類型
填寫build.xm的絕對路徑
立即構建
查看日志
E:\uncleyong\result目錄下也生成了html和jtl報告。
jenkins配置發送郵件
安裝插件
構建后操作中
點擊【Add】
輸入下面內容,其中第一個是html報告的目錄
然后依次點擊:Apply--Save
立即構建
可以看到生成的報告
點擊最近時間的,沒有樣式
輸入如下內容,點擊右下角run
立即構建
打開報告
下面以126郵箱作為發件箱舉例(也可以用qq郵箱等其它郵箱)
登錄126郵箱
勾選,彈出提醒框,點擊確定
勾選【開啟】
輸入授權碼,點擊【確定】
點擊【確定】
系統管理--系統設置
輸入126郵箱地址、郵箱服務器
郵箱賬號、授權碼
郵件模板
點擊【Apply】、【Save】
構建后操作
下面有些變量是讀取的我們的配置,比如郵件內容等
收件人默認值設置:系統管理--系統設置
如果上面沒有設置,可以在下面設置收件人(多個郵箱地址逗號間隔),添加一個qq郵箱
刪除默認的觸發配置
創建觸發配置
立即構建
查看構建日志
qq收到郵件
郵件內容,點擊【顯示圖片】
圖片正常顯示
126郵箱的已發送里面也可以看到已經發送的郵件。
一個及多個jmx文件多個請求報告展示
上面只有一個請求,我們看看多個請求的效果
一個jmx多個請求
多個jmx多個請求
可以看到,報告都匯總了。
項目源碼,加Q群獲取
自動化測試框架【linux版】:JMeter + Ant + Jenkins
詳見:https://www.cnblogs.com/UncleYong/p/10766480.html
其余自動化框架:
不需要寫代碼的自動化框架
自動化測試框架: JMeter + Ant + Jenkins【 windows 版】: https://www.cnblogs.com/UncleYong/p/10739519.html
自動化測試框架: JMeter + Ant + Jenkins【 linux 版】: https://www.cnblogs.com/UncleYong/p/10766480.html
自動化測試框架:JMeter + Maven + Jenkins :https://www.cnblogs.com/UncleYong/p/10843097.html
需要寫代碼的自動化框架
python版接口自動化測試框架源碼完整版(requests + unittest): https://www.cnblogs.com/UncleYong/p/10650552.html
java版接口自動化測試框架源碼完整版(httpclient + testng):https://www.cnblogs.com/UncleYong/p/10659840.html
后續框架分享計划:
pytest版接口自動化測試框架
web端ui自動化測試框架
app端ui自動化測試框架
性能自動化測試框架