我们可以在JUNIT 4中编写自定义测试套件吗?

时间:2012-09-10 10:29:11

标签: java junit4

我是JUNIT 4的新手,我想编写测试套件等代码,从excelsheet获取输入,并根据输入testsuite调用不同的测试用例。根据JUNIT 4,我们可以在@SuiteClasses({ ParameterSampleTest.class,SampleJUnitTest.class })中定义所有测试用例,但这是我们预定义测试用例的时候。但在这里我想使用基于输入做出决定的客户JUNIT跑步者?有人可以帮助解决这个问题吗?

@RunWith(Suite.class) 
 public class AllTests {
  public static TestSuite suite() {
        TestSuite suite = new TestSuite();
        suite.addTest(new JUnit4TestAdapter(ParameterSampleTest.class));
        suite.addTest(new JUnit4TestAdapter(SampleJUnitTest.class));
        return suite;
  }
}

谢谢, Priyank Shah

2 个答案:

答案 0 :(得分:0)

这应该有用......

@RunWith(Suite.class) 
public class AllTests {
public static TestSuite suite() {
        TestSuite suite = new TestSuite();
        //if(your logic based decision) {
            suite.addTest(new JUnit4TestAdapter(ParameterSampleTest.class));
        //}
        suite.addTest(new JUnit4TestAdapter(SampleJUnitTest.class));
        return suite;
  }
}

答案 1 :(得分:0)

您可以实施自己的测试运行器。这并不困难。您只需创建扩展org.junit.runner.Runner的类并实现其getDescription()run()方法。跑步者可以根据其业务逻辑找到子案例并运行它们。