从JUnit迁移到TestNG:如何转换@SuiteClasses?

时间:2012-01-25 14:08:04

标签: junit porting testng

我正在转换一堆用于JUnit 4+的测试用例,而不是使用TestNG。我发现测试类级别注释大多相似,可以轻松替换(例如@Before => @BeforeMethod)。但是,测试套件很难转换。对于例如我有一堆测试套件,可以使用JUnit的@SuiteClasses注释运行:

import org.junit.runner.RunWith;
import org.junit.runners.Suite;
import org.junit.runners.Suite.SuiteClasses;

@RunWith(Suite.class)
@SuiteClasses({ Foo.class, Bar.class, Baz.class, subpackage.AllTests.class })
public class AllTests {}

将此类转换为TestNG认可的套件的最佳方法是什么?我应该编写一个脚本来为每个类生成相应的some_suite.xml吗?还有更好的方法吗?

1 个答案:

答案 0 :(得分:1)

您可以创建一个.xml文件(我建议您这样做,因为它可以让您的生活更轻松,最终,.xml将包含您的整个测试套件),或者您可以使用TestNG API,这非常简单。这是relevant documentation