maven - Maven 是否按顺序运行 JUnit 测试?

标签 maven maven-surefire-plugin

我有一个多模块 Maven 项目。在一个模块中,我有一些启动 HTTP 服务器 的单元测试。有时我会遇到错误,因为服务器无法在端口上启动,因为该端口已被占用。如果 Maven 按顺序运行测试,这似乎不正确。

最佳答案

根据设计,单元测试应该是独立的,而不是按顺序运行。因此,JUnit 和 Maven 测试任务默认情况下不会按顺序运行它们。从 JUnit 4.11 开始,它现在支持使用 @FixMethodOrder 指定执行顺序。注释。但是,如果您希望测试给定代码单元之外的功能,那么您应该考虑集成测试。

这可以通过几种不同的方式来实现。如果需要测试容器内的内容,可以使用 Arquilion 。您还可以使用类似 Mockito 的模拟库来模拟依赖对象的功能。 .

关于maven - Maven 是否按顺序运行 JUnit 测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33259864/

相关文章:

java - Spring用maven,jar打包,不显示welcome.jsp页面

maven - 如何使用 mvn site 命令生成集成测试报告

java - Maven surefire - 在测试之间建立依赖关系

java - 使用 Jacoco 的离线工具进行多模块 Maven 项目,使用 Surefire 覆盖率

maven - 每个测试设置的 jacoco 覆盖率

maven-surefire-plugin - fork 的 VM 没有正确告别就终止了。 VM 崩溃或 System.exit 调用?

java - Hibernate - 有没有办法获取违反约束的列的名称?

maven - Gradle无法发布多个Maven native Artifact

maven - 如何抑制关于多个绑定(bind)的 SLF4J 警告?

maven - Intellij - 无法启动 Maven 服务 - ExecutionException