2009-06-30 160 views
5

我對一個非常大的產品進行了一種集成/壓力測試(考慮操作系統的大小),最近我和我的團隊一直在討論如何更好地組織我們的測試工作負載。到目前爲止,我們滿足於將我們所有的(定製)工作負載應用程序放在一系列批處理作業中,每個作業代表一次壓力測試運行。現在我們正處於平均測試運行涉及到13個系統上運行100個工作負載的時候,我們認爲是時候構建一些更高級的東西了。設計壓力測試框架

我已經看過很多關於單元測試框架的內容,但是對於更高級別的壓力類型測試卻很少。有誰知道管理大量工作負載的問題得到解決的常見(或不常見)方式?

現在我們想保留每個工作負載的數據庫,並提供一個前端,根據我們在特定日期需要的壓力,將它們混合並匹配到測試包中,但我們沒有任何最好的方式來做更高級的事情的例子,比如排序每個單獨的工作負載放在系統上的壓力。

我的大型產品壓力測試員在做什麼?對我們來說,一些手寫腳本不會再削減它了。

+0

我不能真正幫助你,但這裏有兩個鏈接到可用的評估工具。 http://www.opensourcetesting.org/performance.php http://www.testingfaqs.org/t-load.html – jitter 2009-06-30 12:56:47

回答

1

我自己的經驗最初在IIS平臺上使用WCAT,後來使用JMeter和Selenium。

WCAT和JMeter都允許您瀏覽網站作爲路徑,完成表單等並將過程記錄爲腳本。該腳本可以單獨播放或模擬多個客戶端和多個線程。隨機播放以模擬不規則和不可預測的使用等。

可以編輯腳本,或者可以在您知道要去哪裏之後用手寫入腳本。 WCAT將允許您從日誌文件中回放以允許您模擬真實世界的使用情況。

以上兩種都安裝在PC或服務器上。

Selenium是一個FireFox插件,但其工作方式類似於錄製和回放腳本並允許擴展。

比較困難的是制定出您正在測試的場景,然後設計測試以適應它們。還需要考慮與數據庫和其他外部資源的交互。考慮到花費大量時間查看日誌文件,所以良好的圖形輸出是必不可少的。

0

對我來說最困難的事情是從負載下的服務器收集和組織性能指標。性能監視器是我的主要工具。當Visual Studio Tester版本出現時,我驚訝地發現使用性能計數器是多麼容易。他們預先打包了Web服務器,SQL服務器,ASP.NET應用程序等的計數器列表。我瞭解了一些我甚至不知道的性能計數器。另外你也可以收集你自己的計數器。您可以在每次運行後存儲指標。您也可以連接到生產服務器,看看他們今天的感受。然後,我可以實時看到所有這些圖形,我感覺有能力! :)如果你需要更多的負載,你可以得到VS Load Agents並創建負載生成裝備(或者我應該稱之爲僵屍網絡)。與市場上超過的產品相比,它相對便宜。 MS許可證按每個處理器執行,但不是每個併發請求這意味着您可以產生儘可能多的硬件負載。平均而言,我能夠在雙核2GB內存計算機上獲得約3,000個併發Web請求。另外,您可以將性能測試集成到您的構建中。

當然,它適用於Windows。除此之外,該工具的價格約爲6千美元,可能有點高,加上每個額外負載代理的相同數額的金額。