持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

在開始這篇文章之前,我要先為大家解答2個疑惑:

第一點,我們為什麼要在項目中進行接口自動化測試?好處是什麼?

相對於UI層面,接口的測試的收益是巨大的,能在最短的時間發現重要的問題。接口在迭代研發過程中,和UI相比變化非常少,自動化維護成本低,能在多個版本中複用。

第二點,我們為什麼要選擇Jmeter+Ant+Jenkins這套框架?好處是什麼?這套框架可以實現什麼?

選擇Jmeter +Ant+Jenkins這套框架的原因是:

①學習成本較低,普通測試上手快,適合小型測試團隊

②腳本可維護性強

接下來言歸正傳,如何用Jmeter + Ant + Jenkins 實現持續集成?

1、 Jmeter 安裝

這裡就不多說了,安裝詳情請參考我之前的文章。

2、Ant 安裝

①下載地址:https://ant.apache.org/bindownload.cgi

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

②解壓到指定目錄下即可

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

③配置環境變量

ANT_HOME

D:\\SProgram\\Ant

Path

%ANT_HOME%\\bin;

④添加jar包

將JMeter所在目錄下extras子目錄裡的ant-JMeter-1.1.1.jar複製到Ant所在目錄lib子目錄之下,這樣Ant運行時才能找到"org.programmerplanet.ant.taskdefs.jmeter.JMeterTask"這個類,從而成功觸發JMeter腳本

⑤修改配置文件

jmeter默認保存的是.csv格式的文件,所以我們先要設置一下bin/jmeter.properties文件內容,保存jmeter.save.saveservice.output_format=xml

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

⑥設置Jmeter工作空間

目錄結構如下

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

結合下面build.xml文件,其實script 是存放將要執行的jmeter腳本文件的,即.jmx 文件的ResultLog 是存放測試報告的。

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

⑦修改build.xml 文件

將如下代碼複製到新建build.xml文件保存即可

<project>

<tstamp>

<format>

<property>

<property>

<property>

<property>

<property>

<property>

<property>

<property>

<target>

<antcall>

<antcall>

<target>

<taskdef>

<jmeter>

<testplans>

<target>

<xslt>

<copy>

<fileset>

<include>

<include>

<target>

<mail>

<message>接口測試報告/<message>

<attachments>

<fileset>

<include>

其實至此,打開命令行,cd 切換到build.xml文件路徑下,執行ant命令,即可得到如下圖

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

以及得到如下測試報告

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

但是此時的測試報告還不完善,需要如下修改

⑧修改Jmeter 測試報告模板

文件位置在 ${jmeter.home}/extras/目錄下

查找 expand.png,以及collapse.png 修改路徑如下。這裡根據自己實際情況修改。問題在於,如果測試報告不是本地打開,會出現圖標不顯示。

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

注意:jmeter-results-detail-report_90Line.xsl 文件,代碼行比較多,就不放在這裡了,自己找資料下載後放到指定目錄下,即可直接使用無需修改!

⑨解決報告顯示NaN的問題 

解決方案,要下載一個xalan.jar,serializer.jar包,將這兩個jar包入ant的lib包中,輸入ant查看運行結果,使用瀏覽器查看,OK,顯示了!

3、Jenkins 安裝

①下載地址:https://jenkins.io/download/

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

②安裝

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

點擊安裝,選擇安裝路徑,一路下一步即可。

安裝成功後會自動打開網頁,需要輸入管理員密碼:密碼參見如下圖文件

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

③新建任務

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

④配置參數

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

高級中設置工作空間,這裡是測試報告的地址,設置後,發送測試報告時,不需要再寫絕對路徑了,直接寫報告名稱即可。

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

舊的構建保存了你在一次構建中的所有臨時文件,如果構建沒有保留的必要,就勾選丟棄舊的構建,同時設置保持構建天使和保持構建的最大個數兩個參數。注意:三個設置必須同時設置,否則無效⑤設置定時運行間隔

這裡,設置間隔時間為15分鐘運行一次

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

日程表介紹

【 * * * * * 】 這五個 "*" 分別的定義為:分 時 天 月 星期

Minutes within the hour (0–59)

HOUR Thehour of the day (0–23)

DOM Theday of the month (1–31)

MONTH Themonth (1–12)

DOW Theday of the week (0–7) where 0 and 7 are Sunday.

*表示全部

即 下圖表示 每天23點某時構建一次。

如果天寫了值表示某月的某天構建一次,同理年和星期也是一樣。

⑥設置構建

添加 invoke ant,完成後點擊保存

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

構建設置build file, build 主要是為了生成測試報告。

⑦設置郵件發送

這裡使用一個sendmail.jar文件

使用WinRAR打開該文件,修改如下文件

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

根據實際需要 修改該配置文件

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

修改完自己的配置文件後,可以將自己的配置文件放到jar包中,通過RAR打開jar然後複製粘貼自己的配置文件到 jar中,然後將sendmail.jar存放到指定路徑。

設置郵件發送命令,如圖,sendmail.jar放到了lib下。其實放哪裡都行,這裡用的時候全路徑引用即可!

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境

命令:java -jar D:\\SProgram\\tools\\sendmail.jar -s "XX測試服接口測試報告,請查收。" -t [email protected] -b "test接口測試報告,請查看附件。" -a "TestReport.html"

-a "測試報告路徑+測試報告名稱"

對於要設置多個收件人時,收件人郵箱之間用英文逗號隔開即可

最後保存配置即可。構建任務,即可自動執行測試任務,併發送郵件到指定郵箱!

總結,這套框架可以實現:

1、斷言驗證(Jmeter可以鏈接數據庫,API返回值可與數據庫中的值進行對比斷言操作)

2、Jenkins定時任務調度

3、測試數據維護性強

4、每輪執行的測試報告在Jenkins可視化展示

5、預警機制,當Jenkins構建失敗時可時時郵件提醒項目成員

接口自動化測試就分享到這裡了,如果文章中有些文件找不到下載地址,可以直接給我留言哦~~

請關注+私信回覆:“學習”就可以免費拿到軟件測試學習資料

持續集成:Jmeter+Jenkins+Ant 搭建自動化接口測試環境


分享到:


相關文章: