如何组织常规测试?

时间:2012-01-05 13:30:57

标签: unit-testing groovy junit

我有一些groovy测试用例(即扩展GroovyTestCase的类(版本1.8.2))。例如

class TestCaseA extends GroovyTestCase {void testA1() {...} void testA2() {...}}
class TestCaseB extends GroovyTestCase {void testB1() {...} void testB2() {...}}

我想将测试分组(测试方法) 例如,

group X: TestCaseA.testA1, TestCaseB.testB1, TestCaseB.testB2,
group Y: TestCaseB.testB2
group Z: TestCaseA.testA1, TestCaseA.testA2 

为了实现这样的分组,我想添加注释。 (我可以更改测试来源) 例如:

class TestCaseA extends GroovyTestCase {

   @TestGroup (TestGroup.X, TestGroup.Z)   
   void testA1() {...}

   @TestGroup (TestGroup.Z)   
   void testA2() {...}
}

现在我想编写一个自定义 JUnit Runner,它接收“测试组”(例如作为命令行参数或环境变量)并仅运行注释为的测试方法这些团体。

有意义吗?有哪些替代方案?如何实现自定义 JUnit Runner?

1 个答案:

答案 0 :(得分:3)

可能不是您正在寻找的,但另一种方法是使用支持群组概念的TestNG开箱即用http://testng.org/doc/documentation-main.html#test-groups。应该可以使用Groovy正常工作:http://groovy.codehaus.org/Using+TestNG+with+Groovy

我知道如果你被JUnit困住了对你没用......