Java JUnit5中的测试套件
我有几个测试类共享扩展BaseTest.class,如下所示Java JUnit5中的测试套件,java,junit5,Java,Junit5,我有几个测试类共享扩展BaseTest.class,如下所示 class BaseTest{ @BeforeAll static setup(){ // code to setup some configs for tests } } 及 我需要并行运行这两个测试,但是在BaseTest类中传递给setup()方法的不同参数上,我发现使用TestNg.xml在TestNg中很容易,但我需要使用Junit5来实现这一点,来自TestNg的示例是 <suite name="Test-c
class BaseTest{
@BeforeAll
static setup(){
// code to setup some configs for tests
}
}
及
我需要并行运行这两个测试,但是在BaseTest类中传递给setup()方法的不同参数上,我发现使用TestNg.xml在TestNg中很容易,但我需要使用Junit5来实现这一点,来自TestNg的示例是
<suite name="Test-class Suite" parallel="classes" thread-count="2">
<test name="Test-class test 1">
<parameter name="paramName" value="paramValue1" />
<classes>
<class name="TestClass1" />
<class name="TestClass2" />
</classes>
</test>
<test name="Test-class test 2">
<parameter name="paramName" value="paramValue2" />
<classes>
<class name="TestClass1" />
<class name="TestClass2" />
</classes>
</test>
</suite>
我希望您能帮助我听取一些建议/想法如何使用Junit5实现这一目标,我感谢您的所有投入
提前感谢你能使用@beforeach吗?@beforeach不能解决我在这里需要的问题,我不确定我的情况对你是否足够清楚。你可以使用两个单独的beforeach方法,并将共享代码提取到sharedSetup(configParam)方法中。
class TestClass2 extends BaseTest{
@Test
void test2(){
// test code
}
}
<suite name="Test-class Suite" parallel="classes" thread-count="2">
<test name="Test-class test 1">
<parameter name="paramName" value="paramValue1" />
<classes>
<class name="TestClass1" />
<class name="TestClass2" />
</classes>
</test>
<test name="Test-class test 2">
<parameter name="paramName" value="paramValue2" />
<classes>
<class name="TestClass1" />
<class name="TestClass2" />
</classes>
</test>
</suite>