我有一个多模块 Maven 项目。在一个模块中,我有一些启动 HTTP 服务器 的单元测试。有时我会遇到错误,因为服务器无法在端口上启动,因为该端口已被占用。如果 Maven 按顺序运行测试,这似乎不正确。
最佳答案
根据设计,单元测试应该是独立的,而不是按顺序运行。因此,JUnit 和 Maven 测试任务默认情况下不会按顺序运行它们。从 JUnit 4.11 开始,它现在支持使用 @FixMethodOrder 指定执行顺序。注释。但是,如果您希望测试给定代码单元之外的功能,那么您应该考虑集成测试。
这可以通过几种不同的方式来实现。如果需要测试容器内的内容,可以使用 Arquilion 。您还可以使用类似 Mockito 的模拟库来模拟依赖对象的功能。 .
关于maven - Maven 是否按顺序运行 JUnit 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33259864/