Java 如何使用多个指令以随机顺序长时间重复运行junit5测试类?
我有一个硬件,我想测试几天。通过设备的接口是通过java库(.jar)完成的。我想使用junit5编写测试并点击该库(以及设备)。我们正在尝试创建一些条件:1)测试应以随机顺序进行,2)测试应具有一定程度的并发性 以下是我的想法: 我创建了一个名为Java 如何使用多个指令以随机顺序长时间重复运行junit5测试类?,java,docker,gradle,docker-swarm,junit5,Java,Docker,Gradle,Docker Swarm,Junit5,我有一个硬件,我想测试几天。通过设备的接口是通过java库(.jar)完成的。我想使用junit5编写测试并点击该库(以及设备)。我们正在尝试创建一些条件:1)测试应以随机顺序进行,2)测试应具有一定程度的并发性 以下是我的想法: 我创建了一个名为MyTestClass的测试类,它有一些固定的测试方法。我可以如下设置测试方法顺序:@TestMethodOrder(methodorder.Random.class) 我不确定下一步该怎么做的部分是加速将并行执行的MyTestClass的x实例,并允
MyTestClass
的测试类,它有一些固定的测试方法。我可以如下设置测试方法顺序:@TestMethodOrder(methodorder.Random.class)
我不确定下一步该怎么做的部分是加速将并行执行的MyTestClass
的x
实例,并允许我说运行每个实例的y
小时数
如果junit5中有其他方法可以用来实现我的目标,我洗耳恭听
编辑:
我还没有弄清楚所有的细节,但我相信我会继续把我的测试类打包到docker容器中。然后拿出一大群容器。我可能需要弄清楚如何汇总报告
谢谢您您可以通过自定义设置来完成此操作。乙二醇
这可能会有帮助。要随机排列顺序,请访问此软件。您确定这是您不需要自己完全控制的东西吗?我不确定,但我希望利用JUnit5的一些功能我不确定您是否希望使用junit,在我看来,你似乎想从设备中获得某种登录机制。你可以把设备从等式中去掉。我实际上是在测试一个java应用程序a.jar,它在JUnit5中似乎被弃用了。它被
ExtendWith
替换,但我不确定是否可以做同样的事情。
@RunWith(MyTestRunner.class)
@MyTestRunnerContext(
runTimeSeconds=86_400,
threadCount=10,
order=Order.RANDOM
)
public class MyTest {
@Test public void test1() {...}
@Test public void test2() {...}
}