gpt4 book ai didi

java - 启动两个 Junit 测试套件

转载 作者:行者123 更新时间:2023-12-01 09:07:42 25 4
gpt4 key购买 nike

我有两个 junit 测试套件,第一个是 AllTestInParallel 并实现它以在多个线程中运行。第二个是 AllTestsInSequence ,它相当慢,我需要在单线程中运行。最后我需要同时启动两个测试套件。我的目的是首先运行慢速测试,然后运行快速测试,反之亦然。

  @RunWith(MultiThreadedClasspathRunner.class)
public class AllTestsInParallel {
}

public class MultiThreadedClasspathRunner extends Suite {
public MultiThreadedClasspathRunner(Class<?> klass, RunnerBuilder builder) throws InitializationError {
super(builder, MultiThreadedClasspathRunner.getTestClassesInProjectClassPath(klass));
}
......
}

@RunWith(SingleThreadedClasspathRunner.class)
public class AllTestsInSequence {
}

public class SingleThreadedClasspathRunnerextends Suite {
public SingleThreadedClasspathRunner(Class<?> klass, RunnerBuilder builder) throws InitializationError {
super(builder, SingleThreadedClasspathRunner.getTestClassesInProjectClassPath(klass));
}
......
}

有人可以让我知道同时启动两个运行者吗?我尝试使用 jvm 参数“-Dtest”,如下所示;

     -Dtest=com.selenium.runner.AllTestsInSequence,com.selenium.runner.AllTestsInParallel

但它总是获取最后的值并执行。是否可以通过一个命令依次启动?

最佳答案

使用@Suite注释创建一个新套件,其中包含您要运行的两个套件:

@RunWith(Suite.class)
@Suite.SuiteClasses({
AllTestsInParallel.class,
AllTestsInSequence .class
})
public class AllTestsSuite {
}

关于java - 启动两个 Junit 测试套件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41132416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com