通过引用其他测试套件从测试套件执行 Junit4 测试

Executing Junit4 tests from a test suite by referring other test suites

我有两个测试套件文件:-

@RunWith(Suite.class)
@SuiteClasses({ GetOrdersTest.class })

public class OrderTestSuite {

}


@RunWith(Suite.class)
@SuiteClasses({ CreateSellerTest.class, GetSellerTest.class, UpdateSellerTest.class, ValidateSellerTest.class })

public class SellerTestSuite {

}

我的意图是 AllTestSuite 将执行所有其他子测试套件中定义的所有测试:-

现在要实现这一点,我必须在 AllTestSuite 中再次重复测试 类 名称,如下所示:-

@RunWith(Suite.class)
@SuiteClasses({ GetOrdersTest.class, CreateSellerTest.class, GetSellerTest.class, UpdateSellerTest.class,
    ValidateSellerTest.class })

public class AllTestSuite {

}

有没有一种方法可以在 AllTestSuite 中指定套件名称(而不是实际测试 类 名称),这将执行子套件中指定的所有测试。我尝试在 @SuiteClasses 下添加套件名称,如下所示。但它不起作用:

@RunWith(Suite.class)
@SuiteClasses({ SellerTestSuite.class, OrderTestSuite.class })

public class AllTestSuite {

}

我正在使用Junit 4.12

我尝试从另一个测试套件 class 调用两个测试套件,它工作得很好。请看一下代码here

所有测试 classes 都放在 com.test 包中,并调用所有测试套件。