安排 CruiseControl 每天運行負載測試
使用 CI 服務器的目的在于,只要向項目的版本控制存儲庫應用了更改,就運行一個自動構建。您也可以將其配置為按特定次數運行構建。由于負載測試通常需要較多的計算資源,在這些資源未被占用時運行測試(例如深夜或清早)會比較好。
在 清單 5 中,一個自動構建被安排在晚上 11:00 點 (2300) 使用 CruiseControl(請參閱 參考資料)運行。您可以修改 CruiseControl 配置文件,以使用一個特定的 Ant 目標運行一個委托構建,比如一個給定的 run-load-tests 構建。
清單 5. 使用 CruiseControl 運行預定的負載測試
... <modificationset> <svn RepositoryLocation="${svnrepo.location}"/> <timebuild username="admin" time="2300"/> </modificationset> ... |
通過將負載測試安排在晚上運行(如清單 5 中一樣),您將不會聽到有關加班、休假或忘記運行測試等借口 — 它們會自動運行。
在 CruiseControl 中顯示報告
您已經看到了如何使用 Ant 顯示 JMeter 測試報告。但是,JMeter 報告只能與單個機器上的一個開發人員通信。負載測試會影響整個應用程序,所以整個團隊都會希望看到結果。好處在于,您可以輕松配置您的 CI 服務器,以顯示這些報告。因為已經使用 Ant 生成了這些報告,所以只需要使 JMeter HTML 報告可以從 CruiseControl 項目儀表板訪問。您可以向 CruiseControl 的 config.xml 文件添加幾行代碼來實現這個目的,如清單 6 所示:
清單 6. 配置 CruiseControl 來顯示 JMeter 報告
<project name="brewery"> ... <log> <merge dir="merge dir="projects/${project.name}/reports/jmeter" /> </log> ... </project> |
現在,團隊中的每個人都可以(真正地)共享這些信息了。很多其他 CI 和構建管理服務器也提供類似的報告集成功能。
結束語
在本文中,我展示了如何向您的開發工具箱添加自動化負載測試。通過使用自動構建運行負載測試,然后將測試安排為定期運行,您可以在系統容量問題出現之前及時發現它們。這種方法使得評估架構和數據更改的影響變得更加容易。當與本文章 系列 中描述的其他技術結合使用時,開發團隊常常能夠交付更高質量的軟件。
下載
描述 | 名字 | 大小 | 下載方法 |
---|---|---|---|
本文的示例 Ant 腳本
|
j-ap04088-jmeter-example.zip
|
6KB
|
參考資料
學習
您可以參閱本文在 developerWorks 全球站點上的 英文原文 。
JMeter:訪問 JMeter 項目網站獲取文檔、教程和社區資源。
“利用 Apache JMeter 測試 WebSphere 性能”(Greg Herringer,developerWorks,2004 年 5 月):JMeter 是測試 Interactive Financial eXchange (IFX) 消息傳遞中間件的不錯選擇。
“Using JMeter”(Budi Kurniawan,onjava.com,2003 年 2 月):一篇基本的 JMeter 指導文章。
“Load Testing with Apache JMeter”(Kulvir Singh Bhogal 和 Javid Jamae,devx.com,2003 年 12 月):另一篇 JMeter 入門文章。
“JMeter tips”(Chi-chang Kung,javaworld.com,2005 年 7 月):提高 JMeter 腳本的質量。
“Load Testing your Applications with Apache JMeter”(Keld H. Hansen,Java Boutique):一個關于使用 JMeter 的教程。
讓開發自動化 (Paul Duvall,developerWorks):閱讀整個系列。
“持續測試”(2007 年 3 月):每次對代碼庫進行更改后就運行自動化測試。
原文轉自:http://www.uml.org.cn/Test/200806101.asp