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