十個(gè)免費(fèi)的Web壓力測(cè)試工具
本文列舉了是十個(gè)免費(fèi)工具,可以用來進(jìn)行Web的負(fù)載/壓力測(cè)試的。這樣你就可以知道你的服務(wù)器以及你的WEB應(yīng)用能夠扛得住多少的并發(fā)量,以及網(wǎng)站性能。
0. Grinder – Grinder是一個(gè)開源的JVM負(fù)載測(cè)試框架,它通過很多負(fù)載注射器來為分布式測(cè)試提供了便利。 支持用于執(zhí)行測(cè)試腳本的Jython腳本引擎HTTP測(cè)試可通過HTTP代理進(jìn)行管理。根據(jù)項(xiàng)目網(wǎng)站的說法,Grinder的 主要目標(biāo)用戶是“理解他們所測(cè)代碼的人——Grinder不僅僅是帶有一組相關(guān)響應(yīng)時(shí)間的‘黑盒’測(cè)試。由于測(cè)試過程可以進(jìn)行編碼——而不是簡(jiǎn)單地腳本 化,所以程序員能測(cè)試應(yīng)用中內(nèi)部的各個(gè)層次,而不僅僅是通過用戶界面測(cè)試響應(yīng)時(shí)間。
1. Pylot -Pylot是一款開源的測(cè)試web service性能和擴(kuò)展性的工具,它運(yùn)行HTTP 負(fù)載測(cè)試,這對(duì)容量計(jì)劃,確定基準(zhǔn)點(diǎn),分析以及系統(tǒng)調(diào)優(yōu)都很有用處。Pylot產(chǎn)生并發(fā)負(fù)載(HTTP Requests),檢驗(yàn)服務(wù)器響應(yīng),以及產(chǎn)生帶有metrics的報(bào)表。通過GUI或者shell/console來執(zhí)行和監(jiān)視test suites。
2. Web Capacity Analysis Tool (WCAT) – 這是一種輕量級(jí)負(fù)載生成實(shí)用工具,不僅能夠重現(xiàn)對(duì) Web 服務(wù)器(或負(fù)載平衡服務(wù)器場(chǎng))的腳本 HTTP 請(qǐng)求,同時(shí)還可以收集性能統(tǒng)計(jì)數(shù)據(jù)供日后分析之用。WCAT 是多線程應(yīng)用程序,并且支持從單個(gè)源控制多個(gè)負(fù)載測(cè)試客戶端,因此您可以模擬數(shù)千個(gè)并發(fā)用戶。該實(shí)用工具利用您的舊機(jī)器作為測(cè)試客戶端,其中每個(gè)測(cè)試客戶端又可以產(chǎn)生多個(gè)虛擬客戶端(***數(shù)量取決于客戶端機(jī)器的網(wǎng)絡(luò)適配器和其他硬件)。您可以選擇使用 HTTP 1.0 還是 HTTP 1.1 請(qǐng)求,以及是否使用 SSL。并且,如果測(cè)試方案需要,您還可以使用腳本執(zhí)行的基本或 NTLM 身份驗(yàn)證來訪問站點(diǎn)的受限部分。(如果您的站點(diǎn)使用 cookie、表單或基于會(huì)話的身份驗(yàn)證,那您可以創(chuàng)建正確的 GET 或 POST 請(qǐng)求來對(duì)測(cè)試用戶進(jìn)行身份驗(yàn)證。)WCAT 還可管理您站點(diǎn)可能設(shè)置的任何 cookie,所以配置文件和會(huì)話信息將***保存。
3. fwptt – fwptt 也是一個(gè)用來進(jìn)行WEB應(yīng)用負(fù)載測(cè)試的工具。它可以記錄一般的請(qǐng)求,也可以記錄Ajax請(qǐng)求。它可以用來測(cè)試 asp.net, jsp, php 或是其它的Web應(yīng)用。
4. JCrawler – JCrawler是一個(gè)開源( CPL) 的WEB應(yīng)用壓力測(cè)試工具。通過其名字,你就可以知道這是一個(gè)用Java寫的像網(wǎng)頁(yè)爬蟲一樣的工具。只要你給其幾個(gè)URL,它就可以開始爬過去了,它用一種特殊的方式來產(chǎn)生你WEB應(yīng)用的負(fù)載。這個(gè)工具可以用來測(cè)試搜索引擎對(duì)你站點(diǎn)產(chǎn)生的負(fù)載。當(dāng)然,其還有另一功能,你可以建立你的網(wǎng)站地圖和再點(diǎn)擊一下,將自動(dòng)提交Sitemap給前5名的搜索引擎
5. Apache JMeter – Apache JMeter是一個(gè)專門為運(yùn)行和服務(wù)器裝載測(cè)試而設(shè)計(jì)的、100%的純Java桌面運(yùn)行程序。原先它是為Web/HTTP測(cè)試而設(shè)計(jì)的,但是它已經(jīng)擴(kuò)展以支持各種各樣的測(cè)試模塊。它和用于HTTP和SQL數(shù)據(jù)庫(kù)(使用JDBC)的模塊一起運(yùn)送。它可以用來測(cè)試靜止資料庫(kù)或者活動(dòng)資料庫(kù)中的服務(wù)器的運(yùn)行情況,可以用來模擬對(duì)服務(wù)器或者網(wǎng)絡(luò)系統(tǒng)加以重負(fù)荷以測(cè)試它的抵抗力,或者用來分析不同負(fù)荷類型下的所有運(yùn)行情況。它也提供了一個(gè)可替換的界面用來定制數(shù)據(jù)顯示,測(cè)試同步及測(cè)試的創(chuàng)建和執(zhí)行
6. Siege -Siege(英文意思是圍攻)是一個(gè)壓力測(cè)試和評(píng)測(cè)工具,設(shè)計(jì)用于WEB開發(fā)這評(píng)估應(yīng)用在壓力下的承受能力:可以根據(jù)配置對(duì)一個(gè)WEB站點(diǎn)進(jìn)行多用戶的并發(fā)訪問,記錄每個(gè)用戶所有請(qǐng)求過程的相應(yīng)時(shí)間,并在一定數(shù)量的并發(fā)訪問下重復(fù)進(jìn)行。 Siege 支持基本的認(rèn)證,cookies, HTTP 和 HTTPS 協(xié)議。
7. http_load – http_load 以并行復(fù)用的方式運(yùn)行,用以測(cè)試web服務(wù)器的吞吐量與負(fù)載。但是它不同于大多數(shù)壓力測(cè)試工具,它可以以一個(gè)單一的進(jìn)程運(yùn)行,一般不會(huì)把客戶機(jī)搞死??梢钥梢詼y(cè)試HTTPS類的網(wǎng)站請(qǐng)求。
8. Web Polygraph – Web Polygraph這個(gè)軟件也是一個(gè)用于測(cè)試WEB性能的工具,這個(gè)工具是很多公司的標(biāo)準(zhǔn)測(cè)試工具,包括微軟在分析其軟件性能的時(shí)候,也是使用這個(gè)工具做為基準(zhǔn)工具的。很多招聘測(cè)試員的廣告中都注明需要熟練掌握這個(gè)測(cè)試工具。
9. OpenSTA – OpenSTA是一個(gè)免費(fèi)的、開放源代碼的web性能測(cè)試工具,能錄制功能非常強(qiáng)大的腳本過程,執(zhí)行性能測(cè)試。例如虛擬多個(gè)不同的用戶同時(shí)登陸被測(cè)試網(wǎng)站。其還能對(duì)錄制的測(cè)試腳本進(jìn)行,按指定的語(yǔ)法進(jìn)行編輯。在錄制完測(cè)試腳本后,可以對(duì)測(cè)試腳本進(jìn)行編輯,以便進(jìn)行特定的性能指標(biāo)分析。其較為豐富的圖形化測(cè)試結(jié)果大大提高了測(cè)試報(bào)告的可閱讀性。OpenSTA 基于CORBA 的結(jié)構(gòu)體系,它通過虛擬一個(gè)proxy,使用其專用的腳本控制語(yǔ)言,記錄通過proxy 的一切HTTP/S traffic。通過分析OpenSTA的性能指標(biāo)收集器收集的各項(xiàng)性能指標(biāo),以及HTTP 數(shù)據(jù),對(duì)系統(tǒng)的性能進(jìn)行分析。
歡迎您留下你認(rèn)為不錯(cuò)的WEB應(yīng)用性能測(cè)試的工具。
英文鏈接:10 Free Tools to Load/Stress Test Your Web Applications
【編輯推薦】