2011-09-14 36 views
7

我们目前已经建立了一个项目,并且有4个团队在其不同部分进行工作。我想要5个蚂蚁目标运行。每个团队一个,另外一个用于生产。但我想在测试中设置一个枚举来确定运行哪些测试。使用Ant仅运行特定的JUnit测试

例如,如果测试有。

runConfiguration = RunConfigurations.PRODUCTION; 

然后我会运行它只运行该特定的蚂蚁目标。如果我没有 等测试将运行:

runConfiguration = RunConfigurations.TEAM1; 

是否有可能在蚂蚁创建batchtest只运行测试,像这样一个特定的枚举值?或者,也许还有另一种方法可以达到同样的目的?

+0

您可能可以创建不同的目标,一个用于生产,一个用于其他目标,另一个可以同时运行。 – Marvo

回答

3

不,你将无法做到这一点。资源集合简单地定义了要作为测试运行的一组java或class文件。

为什么不简单地在软件包中组织测试,或者甚至每组测试都有一个源/目录目录?

<batchtest ...> 
    <fileset dir="testclasses"> 
     <include name="com/foo/bar/team1/**/*.class"/> 
    </fileset> 
</batchtest> 

<batchtest ...> 
    <fileset dir="testclasses/team1"> 
     <include name="**/*.class"/> 
    </fileset> 
</batchtest> 
+0

我不想这样做的一个原因是我不想要一个生产包。当他们准备好生产时,我不希望将测试转移到生产包。 – justspamjustin

+0

准备好或未准备好生产不应在此级别处理,IMO。它应该由你的源代码管理系统(SVN,Git,不管)来处理。在开发分支中开发,只包含prod分支中的准备工作。 –

1

如果使用TestSuite什么?然后用ant在不同的场合只执行你想要的TestSuites。

相关问题