目前主流的測試工具主要有以下5類:
1.負載壓力測試工具
這類測試工具的主要目的是度量應用系統的可擴充套件性和效能,是一種預測系統行為和效能 的自動化測試工具。在實施併發負載過程中,通過實時效能監測來確認和查詢問題,並針對所 發現問題對系統性能進行優化,確保應用的成功部署。負載壓力測試工具能夠對整個企業架構 進行測試,通過這些測試,企業能最大限度地縮短測試時間,優化效能和加速應用系統的釋出 週期。
1) LoadRunner 特點a,支援的協議多且個別協議支援的版本比較高;特點b,負載壓力測試方案設定靈活;特點c,豐富的資源監控;特點d,報告可以匯出到Word、Excel以及HTML格式。
2)QALoad (1).測試介面多;(2)可預測系統性能;(3)通過重複測試尋找瓶頸問題;(4)從控制中心管理全域性負載測試;(5)可驗證應用的擴充套件性;(6)快速建立模擬的負載測試;(7)效能價格比較高。此外,QALoad不單單測試Web應用,還可以測試一些後臺的東西,比如SQL Server等。只要它支援的協議,都可以測試。
3)Benchmark Factory 首先它可以測試伺服器群集的效能;其次,可以實施基準測試;最後,可以生成高階指令碼。
4)SilkPerformance:
5)E-Test Suite 由Empirix公司開發的測試軟體,能夠和被測試應用軟體無縫結合的Web應用測試工具。工具包含e-Tester、e-Load和e-Monitor,這三種工具分別對應功能測試、壓力測試以及應用監控,每一部分功能相互獨立,測試過程又可彼此協同。
6)JMeter 是一個專門為執行和伺服器負載測試而設計、100%的純Java桌面執行程式。原先它是為Web/HTTP測試而設計的,但是它已經擴充套件以支援各種各樣的測試模組。它和HTTP和SQL(使用JDBC)的模組一起執行。它可以用來測試靜止或活動資料庫中的伺服器執行情況,可以用來模擬伺服器或網路系統在重負載下的執行情況。它也提供了一個可替換的介面用來定製資料顯示,測試同步及測試的建立和執行。
7)WAS 是Micro$oft提供的免費的Web負載壓力測試工具,應用廣泛。WAS可以通過一臺或者多臺客戶機模擬大量使用者的活動。WAS支援身份驗證、加密和Cookies,也能夠模擬各種瀏覽器和Modem速度,它的功能和效能可以與數萬美元的產品媲美。
8)ACT 或稱MSACT,它是微軟的Visual Studio和Visual Studio.net帶的一套進行程式壓力測試的工具。ACT不但可以記錄程式執行的詳細資料引數,用圖表顯示程式執行情況,而且安裝和使用都比較簡單,結果閱讀葉很方便,是一套較理想的測試工具。
9)OpenSTA 它的全稱是Open System Testing Architecture。OpenST的特點是可以模擬很多使用者來訪問需要測試的網站,它是一個功能強大、自定義設定功能完備的軟體。但是,這些設定大部分需要通過scrīpt來完成,因此在真正使用這個軟體之前,必須學習好它的scrīpt編寫。如果需要完成很複雜的功能,scrīpt的要求還比較高。當然這也是它的優點,一些程式設計師不會在意編寫scrīpt的。
10)PureLoad 一個完全基於Java的測試工具,它的scrīpt程式碼完全使用XML。所以,編寫scrīpt很簡單。它的測試包含文字和圖形並可以輸出為HTML檔案。由於是基於Java的軟體,因此PureLoad可以通過Java Beans API來增強軟體功能。
11)網站壓力(負載)測試工具Webserver Stress Tool:軟體介紹:可以模擬任何人數在同一時間內進站或是循序進站時你的Server的反應表現。只要輸入網站的URL網址以及模擬的上站人數,就可以看出Server在這種壓力測試下的評比,用條狀圖明白地表示出Server反應時間、傳遞速率等相關資料。除了Http的網頁外,還支援CGI或ASP等語言撰寫的程式。支援Proxy設定、密碼輸入、Cookies與ASP的Session-IDs等功能。
2.功能測試工具
通過自動錄製、檢測和回放使用者的應用操作,將被測系統的輸出記錄同預先給定的標準結 果比較,功能測試工具能夠有效地幫助測試人員對複雜的企業級應用的不同釋出版本的功能進 行測試,提高測試人員的工作效率和質量。其主要目的是檢測應用程式是否能夠達到預期的功 能並正常執行。
1)WinRunner 企業級的功能測試工具,用於檢測應用程式是否能夠達到預期的功能及正常執行,自動執行重複任務並優化測試工作,從而縮短測試時間。通過自動錄製、檢測和回防使用者的應用操作,從而提高測試效率。
2)QARun 一款自動迴歸測試工具,與Winrunner比較學習成本要低很多。不過要安裝QARun必須安裝.net環境,另外它還提供與TestTrack Pro的整合。
3)Rational Robot 我經常使用的測試工具,屬於Rational TestSuite中的一員,對於Visual studio 6編寫的程式支援的非常好,同時還支援Java Applet、HTML、Oracle Forms、People Tools應用程式的支援。要支援Delphi程式的測試還必須下載外掛。Rational Robot的語法使用Basic語法,它的語言使用SQABasic。
4)Functional Tester 它是Robot的Java實現版本,在Rational被IBM收購後釋出的。在Java的浪潮下,Robot被移植到了Eclipse平臺,並完全支援Java和.net。可以使用VB.net和Java進行指令碼的編寫,當然了錄下指令碼讓後做做修改是最爽的事情了。由於支援Java,那麼對測試指令碼進行測試也變成了可能。更多的資訊請到IBM developerworks上檢視,另外還提供試用版本下載。
5)QuickTest Professional:是一個B/S系統的自動化功能測試的利器,軟體程式測試工具。Mercury的自動化功能測試軟體(現已被HP收購),可以覆蓋絕大多數的軟體開發技術,簡單高效,並具備測試用例可重用的特點。是一款先進的自動化測試解決方案,用於建立功能和迴歸測試。它自動捕獲、驗證和重放使用者的互動行為。為每一個重要軟體應用和環境提供功能和迴歸測試自動化的行業最佳解決方案。
6)SilkTest 是面向Web應用、Java應用和傳統的C/S應用,進行自動化的功能測試和迴歸測試的工具。它提供了用於測試的建立和定製的工作流設定、測試計劃和管理、直接的資料庫訪問及校驗等功能,使使用者能夠高效率地進行軟體自動化測試。為提高測試效率,SilkTest提供多種手段來提高測試的自動化程度,包括:從測試指令碼的生成、測試資料的組織、測試過程的自動化、測試結果的分析等方面。在測試指令碼的生成過程中,SilkTest通過動態錄製技術,錄製使用者的操作過程,快速生成測試指令碼。
3.白盒測試工具
白盒測試工具一般是針對程式碼進行測試,測試中發現的缺陷可以定位到程式碼級。根據測試 工具原理的不同,又可以分為靜態測試工具和動態測試工具。靜態測試工具直接對程式碼進行分 析,不需要執行程式碼,也不需要對程式碼編譯連結和生成可執行檔案。靜態測試工具一般是對代 碼進行語法掃描,找出不符合編碼規範的地方,根據某種質量模型評價程式碼的質量,生成系統 的呼叫關係圖等。動態測試工具一般採用“插樁”的方式,在程式碼生成的可執行檔案中插入一 些監測程式碼,用來統計程式執行時的資料。它與靜態測試工具最大的不同是,動態測試工具要 求被測系統實際執行。
1)Logiscope
2)PRQA
3)Xunit系統如Junit、Cunit
4) DevPartner
5)Rational Purify
6)Jprob
白盒測試工具就不多介紹了,因為網上這方面的資料特別多。
4.測試管理工具
一般而言,測試管理工具對測試需求、測試計劃、測試用例、測試實施進行管理,並且測 試管理工具還包括對缺陷的跟蹤管理。測試管理工具能讓測試人員、開發人員或其他的IT人員 通過一箇中央資料倉庫,在不同地方就能互動資訊。
1) TestDirector MI的測試管理工具,可以與winrunner、Loadrunner、QuickTestPro進行整合。除了可以跟蹤Bug外,還可以編寫測試用例、管理測試進度等等,是測試管理的首選軟體。
2) TestManager Rational Testsuite中的一員,可以用來編寫測試用例、生成Datapool、生成報表、管理缺陷以及日誌等等。是一個企業級的強大測試管理工具。缺點是必須和其它元件一起使用,測試成本比較高。
3) TrackRecord 一款擅長於Bug管理的工具,與TestDirecotr和Testmanager比較起來是很light的。不過至今還沒有配成功過。:(
4) Bugzilla 一個產品缺陷的記錄及跟蹤工具,它能夠為你建立一個完善的Bug跟蹤體系,包括報告、查詢併產生報表、處理解決等幾個部分。它的主要特點為:基於Web方式,安裝簡單;有利於缺陷的清楚傳達;系統靈活,可配置性很強;自動傳送Email。
5) Jira 是一個Bug管理工具,自帶一個Tomcat 4;同時有簡單的工作流編輯,可用來定製流程;資料儲存在HSQL資料引擎中,因此只要安裝了JDK這個工具就可以使用。相比較Bugzilla來說有不少自身的特點,不過可惜它並不是開源工具,有Lisence限制。
6)QC(quick center) 它是TD的升級版,功能與介面與TD差不多。
5.測試輔助工具
這些工具本身並不執行測試,例如它們可以生成測試資料,為測試提供資料準備。
1)SmartDraw 用於繪製UCML,進行負載壓力測試需求分析。對壓力測試測試前的工作很有幫助。
2)SDemo 我個人比較喜歡用這個工具,可以將操作錄成EXE檔案,並回放出來。這樣就避免了那些偶爾才出現的Bug!