如何解决为测试类执行 Java 提供顺序
我有三个测试类来测试我的控制器、服务和 Kafka 消息传递。当我独立运行 Kafka 消息传递时,它可以工作。但是当我一起运行所有测试文件时,Kafka 测试类只要它是第一个被执行的就会通过,否则它会失败。
我想通过确保 Kafka 测试类始终是第一个执行来对测试类的执行进行排序。
我怎样才能做到这一点?使用测试套件?有没有其他办法?我的应用程序是使用 Micronaut、Java 8 构建的。
解决方法
尝试使用有助于测试执行顺序的@OrderWith 注释
None
以上代码将按照方法名称的字母数字顺序运行测试。
我们还可以使用@FixMethodOrder 注释来提及必须对方法进行排序和执行的顺序。目前有3种选择
-
MethodSorters.DEFAULT
-
MethodSorters.NAME_ASCENDING
-
MethodSorters.JVM
@FixMethodOrder(MethodSorters.NAME_ASCENDING) 公共类 TestMethodOrder { ..... }
参考文献:https://github.com/junit-team/junit4/wiki/Test-execution-order
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。