Java開源軟體測試工具大彙總

xuniji123發表於2007-04-08
JUnit

  JUnit是由Erich Gamma 和Kent Beck 編寫的一個迴歸測試框架(regression testing framework)。Junit測試是程式設計師測試,即所謂白盒測試,因為程式設計師知道被測試的軟體如何(How)完成功能和完成什麼樣(What)的功能。Junit是一套框架,繼承TestCase類,就可以用Junit進行自動測試了。

  

  Cactus

  Cactus是一個基於JUnit框架的簡單測試框架,用來單元測試服務端Java程式碼。Cactus框架的主要目標是能夠單元測試服務端的使用Servlet物件的Java方法如HttpServletRequest,HttpServletResponse,HttpSession等

  

  Abbot

  Abbot是一個用來測試Java GUIs的框架。用簡單的基於XML的指令碼或者Java程式碼,你就可以開始一個GUI。

  

  JUnitPerf

  Junitperf實際是junit的一個decorator,透過編寫用於junitperf的單元測試,我們也可使測試過程自動化。

  

  DbUnit

  DbUnit是為資料庫驅動的專案提供的一個對JUnit 的擴充套件,除了提供一些常用功能,它可以將你的資料庫置於一個測試輪迴之間的狀態。

  

  Mockrunner

  Mockrunner用在J2EE環境中進行應用程式的單元測試。它不僅支援Struts actions, servlets,過濾器和標籤類還包括一個JDBC和一個JMS測試框架,可以用於測試基於EJB的應用程式。

  

  DBMonster

  DBMonster是一個用生成隨機資料來測試SQL資料庫的壓力測試工具。

  

  MockEJB

  MockEJB是一個不需要EJB容器就能執行EJB並進行測試的輕量級框架。

  

  StrutsTestCase

  StrutsTestCase 是Junit TestCase類的擴充套件,提供基於Struts框架的程式碼測試。StrutsTestCase同時提供Mock 物件方法和Cactus方法用來實際執行Struts ActionServlet,你可以透過執行servlet引擎來測試。因為StrutsTestCase使用ActionServlet控制器來測試你的程式碼,因此你不僅可以測試Action物件的實現,而且可以測試mappings,from beans以及forwards宣告。StrutsTestCase不啟動servlet容器來測試struts應用程式(容器外測試)也屬於Mock物件測試,但是與EasyMock不同的是,EasyMock是提供了建立Mock物件的API,而StrutsTest則是專門負責測試Struts應用程式的Mock物件測試框架。

  

JFCUnit

  JFCUnit使得你能夠為Java偏移應用程式編寫測試例子。它為從用程式碼開啟的視窗上獲得控制程式碼提供了支援;為在一個部件層次定位部件提供支援;為在部件中發起事件(例如按一個按鈕)以及以執行緒安全方式處理部件測試提供支援。

  http://jfcunit.sourceforge.net/

  JTestCase

  JTestCase 使用XML檔案來組織多測試案例資料,宣告條件(操作和期望的結果),提供了一套易於使用的方法來檢索XML中的測試案例,按照資料檔案的定義來宣告結果。

  

  SQLUnit

  SQLUnit是一個單元測試框架,用於對資料庫儲存過程進行迴歸測試。用Java/JUnit/XML開發。

  

  JTR

  JTR (Java Test Runner)是一個開源的基於反轉控制(IOC)的J2EE測試框架。它允許你構建複雜的J2EE測試套件(Test Suites)並連到應用伺服器執行測試,可以包括多個測試例項。JTR的licensed是GPL協議。

  

  Marathon

  Marathon是一個針對使用Java/Swing開發GUI應用程式的測試框架,它由recorder, runner 和editor組成,測試指令碼是python程式碼。Marathon的焦點是放在終端使用者的測試上。

  

  TestNG

  TestNG是根據JUnit 和NUnit思想而構建的一個測試框架,但是TestNG增加了許多新的功能使得它變得更加強大與容易使用比如:

  *支援JSR 175註釋(JDK 1.4利用JavaDoc註釋同樣也支援)

  *靈活的Test配置

  *支援預設的runtime和logging JDK功能

  *強大的執行模型(不再TestSuite)

  *支援獨立的測試方法。

  

  Surrogate Test framework

  Surrogate Test framework是一個值得稱讚單元測試框架,特別適合於大型,複雜Java系統的單元測試。這個框架能與JUnit,MockEJB和各種支援模擬物件(mock object )的測試工具無縫給合。這個框架基於AspectJ技術。

  

  MockCreator

  MockCreator可以為給定的interface或class生成模擬物件(Mock object)的原始碼。

  

jMock

  jMock利用mock objects思想來對Java code進行測試。jMock具有以下特點:容易擴充套件,讓你快速簡單地定義mock objects,因此不必打破程式間的關聯,讓你定義靈活的超越物件之間互動作用而帶來測試侷限,減少你測試地脆弱性。

  

  EasyMock

  EasyMock為Mock Objects提供介面並在JUnit測試中利用Java的proxy設計模式生成它們的例項。EasyMock最適合於測試驅動開發。

  

  The Grinder

  The Grinder是一個負載測試框架。在BSD開源協議下免費使用。

  

  XMLUnit

  XMLUnit不僅有Java版本的還有.Net版本的。Java開發的XMLUnit提供了兩個JUnit 擴充套件類XMLAssert和XMLTestCase,和一組支援的類。這些類可以用來比較兩張XML之間的不同之處,展示XML利用XSLT來,校驗XML,求得XPath表示式在XML中的值,遍歷XML中的某一節點利DOM展開,

  

  Jameleon

  Jameleon一個自動化測試工具。它被用來測試各種各樣的應用程式,所以它被設計成外掛模式。為了使整個測試過程變得簡單Jameleon提供了一個GUI,因此Jameleon實現了一個Swing 外掛。

  

  J2MEUnit

  J2MEUnit是應用在J2ME應用程式的一個單元測試框架。它基於JUnit.

  

  Jetif

  Jetif是一個用純Java實現的迴歸測試框架。它為Java程式單元測試以及功能測試提供了一個簡單而且可伸縮的架構,可以用於個人開發或企業級開發的測試。它容易使用,功能強大,而且擁有一些企業級測試的重要功能。Jetif來源於JUnit, JTestCase以及TestNG的啟發,有幾個基本的概念直接來自於JUnit,比如說斷言機制,Test Listener的概念,因此從JUnit轉到Jetif是非常容易的。

  

  GroboUtils

  GroboUtils使得擴充套件Java測試變得可能。它包括用在Java不同方面測試的多個子專案。在GroboUtils中最常被到的工具是:多執行緒測試(multi-threaded tests),整體單元測試(hierarchial unit tests),程式碼覆蓋工具(code coverage tool)。

  

  Testare

  TESTARE是用來簡化分散式應用程式(比如:在SERVLETS,JMS listeners, CORBA ORBs或RMI環境下)測試開發過程的一個測試框架.

  https://testare.dev.java.net/

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/8271432/viewspace-909329/,如需轉載,請註明出處,否則將追究法律責任。

相關文章