有没有办法在junit5中完全控制测试方法的执行(包括前/后方法),类似于JUnit4 @RunWith注释)?
我正在尝试构建一个junit5 Arquillian扩展,但由于Aquillian基本上需要在容器中执行每个测试,所以当从junit5扩展中运行Arquillian时我遇到了问题.
我的代码在这里:BasicJunit5ArquillianTest.java
测试应该在一个单独的容器中运行所有方法(包括之前/之后),该容器可以是单独的JVM,远程或嵌入式服务器或任何隔离的.我的扩展从beforeEach钩子运行测试方法,使用Arquillian传输测试类并使用LauncherFactory.create()在容器中运行它,收集测试结果并将其传回.
问题是测试方法执行两次 – 通过正常的junit5执行和来自beforeEach钩子的我的Arquillian扩展.我想仅通过Arquillian运行测试并跳过方法的正常执行.
最佳答案
没有扩展点(yet?)允许您定义测试的运行位置和方式.对于线程来说已经是这样,这意味着无法在JavaFX应用程序线程或Swing EDT上运行它们.
您可能需要更深入地实施engine,但这意味着用户必须在编写Arquillian测试或编写Jupiter测试之间进行选择.
原文地址:https://www.jb51.cc/java/437392.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。