JUnit :JUnit幾乎是其他所有內容的基礎。 它的Java單元測試框架與IDE,構建工具和CI Server進行了高度集成。 我不認真對待“單位”一詞。 我也使用JUnit執行所有其他類型的測試。
Mockito :有很多Mocking框架,但是我更喜歡這個框架。 它具有不錯的DSLish API,我覺得很好用。 唯一的缺點是,在某些特殊情況下,標準API不起作用,必須使用另一種語法 。
PowerMock :我實際上不嘗試將其引入項目中。 如果要模擬構造函數,靜態或最終方法,則需要PowerMock。 如果您需要這樣做,PowerMock可以完成工作,但最好不要這樣做。
Jenkins :免費的持續集成服務器。 并非完全是一件美麗的事,但它確實有效,易于設置,并且借助幾個插件可以完成我到目前為止所需的一切。
CheckStyle :一種靜態代碼分析,它發現許多不良做法,并且也可以檢查許多編碼約定。 集成在IDE和CI服務器中。 該領域還有其他值得考慮的工具: FindBugs和PMD 。 您也可以使用Checkstyle來收集有關代碼的簡單指標 。
JDepend :對代碼的依賴項進行靜態代碼分析。 我使用它來針對代碼中的程序包之間的周期編寫測試,也為了將依賴項限制為我愿意在代碼庫中接受的依賴項。 前一段時間,我發現JDepend中存在一些限制,導致JDepend錯過了依賴項(我認為它不考慮注釋中的類或其他內容)。 因此,我正在研究DependencyFinder ,它似乎功能更強大,但肯定更難使用。 我實際上構建了一個小工具,用于基于DependencyFinder 可視化依賴關系。
Cobertura / EclEmma :Cobertura和Emma是代碼覆蓋率工具。 我都用它們。 Emma以EclEmma的形式作為eclipse插件使用,而Cobertura在Jenkins中使用,因為我們無法讓Emma在我們的Jenkins實例上正常工作。
聲納 :它從您的代碼中收集大量指標,并將其作為網站提供。 實際上,有很多符合我的口味。 在一個嚴肅的項目中,您可以整天看數字。 聲納的真正優點在于,它可以隨時間跟蹤這些數字,因此您可以查看平均方法長度是隨時間增加還是減少。 在某些項目中,我配置了一個圖表,其中隨時間推移繪制了最重要的數字,并將其添加到Jenkins的主屏幕中。
參考文獻: 我的測試和代碼分析工具箱從我們JCG伙伴延Schauder不以schauderhaft博客。
相關文章 :
- JUnit 4.9(測試版3)中的規則
- Spring 3使用JUnit 4進行測試– ContextConfiguration和AbstractTransactionalJUnit4SpringContextTests
- 測試技巧–不編寫測試
- 軟件開發和維護中的收益遞減
- 任何軟件開發公司應存在的服務,實踐和工具,第1部分
- 我不是工程師–我是軟件開發人員
- 針對用戶和新采用者的敏捷軟件開發建議
- Java工具:源代碼優化和分析
翻譯自: https://www.javacodegeeks.com/2011/12/my-testing-and-code-analysis-toolbox.html