Java 如何在Eclipse中指定JUnit类别?

Java 如何在Eclipse中指定JUnit类别?,java,eclipse,junit,Java,Eclipse,Junit,从Eclipse运行JUnit测试时,我应该在哪里指定@category变量 例如,当通过命令行使用Maven时,我可以指定JUnit来运行由“com.abc.MyTests”注释的测试用例,如下所示 mvn test -Dgroups="com.abc.MyTests" 在运行配置中,我可以在环境选项卡中定义环境变量,或者在参数选项卡中指定参数。然而两者都不起作用。。。(可能是我没有正确配置)如果您从Eclipse运行JUnit测试,通常不会通过maven执行此操作,因此提供特定于maven

从Eclipse运行JUnit测试时,我应该在哪里指定
@category
变量

例如,当通过命令行使用Maven时,我可以指定JUnit来运行由“com.abc.MyTests”注释的测试用例,如下所示

mvn test -Dgroups="com.abc.MyTests"

运行配置中,我可以在环境选项卡中定义环境变量,或者在参数选项卡中指定参数。然而两者都不起作用。。。(可能是我没有正确配置)

如果您从Eclipse运行JUnit测试,通常不会通过maven执行此操作,因此提供特定于maven的类似于
-Dgroups
-like的命令行选项将不起作用

您可以在Eclipse中创建一个maven配置,并从Eclipse中调用它,但我认为这不是您想要的

我自己也遇到了这个问题,最终创建了专用的套件类:

@RunWith(Categories.class)
@Categories.IncludeCategory(com.abc.MyTests.class)
@SuiteClasses( { AllTests.class } )
public class MyTestSuite { }
这假设存在另一个类
AllTests
汇总测试类的集合:

@RunWith(Suite.class)
@SuiteClasses({
  Test1.class,
  Test2.class, 
  ...
})
public class AllTests { }
然后,您可以直接从Eclipse运行
MyTestSuite

这并不十分理想,因为它需要维护
AllTests
类,以及一个额外的类,用于从Eclipse测试任何类别