前言
前面已經寫了一篇部落格
【Jenkins】——Jenkins+jmeter 定時測試
上篇部落格中只提到了在shell中只執行一個指令碼,產生對應的jtl檔案
並對其進行資料分析。
有些時候我們可能需要測試很多的指令碼,但是因為每個job都會產生一個工作空間
或不利於尋找,或不利於分類,或不利於分析資料,不適用建立很多的工作空間,
這時我們可能需要在一個job中配置測試多個指令碼
本文
執行多個指令碼時,只有Execute shell 和 Publish Performance test result report 稍有不同
其他配置與資料分析都與之前沒有什麼區別,這裡不再贅述
① 配置Execute shell
對一些名詞的解釋這裡也不再闡述了,不太理解的可以參考上一篇部落格
⑴ 下面兩條語句格式相同,上一篇部落格也介紹了,中間用 && 串連
⑵ 還可以直接添加兩個Execute shell,一個shell中寫一條語句,效果相同
② 配置Publish Performance test result report
關鍵點在這裡,第①步是利用shell構建,產生jtl檔案,
而我們產生jtl檔案只是測試工作的一部分,更重要的是分析資料
如果第②步這裡路徑寫的不準確的話,產生的表徵圖資料分析就不是你想要的
在第②步填寫的內容非常靈活,要根據你產生的jtl檔案的位置,適當填寫
如上圖 **/* 表示對此job的工作空間內所有的jtl檔案產生表徵圖分析
這裡的 * 是萬用字元,可以理解成我們在windows系統中尋找檔案時用的 *
這裡可以直接寫到確切的檔案名稱,也可以利用萬用字元分析某個範圍內的jtl檔案
如果是利用萬用字元分析某個範圍內的檔案,
則若存在相同的檔案名稱,按照層級尋找順序,之後的檔案不會產生分析圖表
比如:按照第一幅圖的情況,若在a/aa/下還有一個bbbb.jtl檔案
而我此時在Publish Performance test result report中寫的是**/*/*.jtl
則產生分析圖表時,會產生a/aa/aaaa.jtl和a/aa/bbbb.jtl兩個檔案的分析圖表,
但這裡並不會影響構建測試,組建檔案時還是會產生a/aa/aaaa.jtl和b/bb/bbbb.jtl兩個檔案
最後還有需要注意的問題:
如果組建檔案的全檔案名稱不變,則每次產生的檔案會疊加到一起
資料分析也就相當於在錄製指令碼的時候多了一次迴圈
最應該注意的一點是:
如果是因為一個或多個請求錯誤率很高而導致的構建失敗,
那麼接下來的構建仍然會失敗,但不影響資料分析
結語
每一天都不一樣