java - 如何在 Eclipse 中指定 JUnit 类别?

标签 java eclipse junit

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

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

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

看起来像在Run Configurations 中,我可以在Environment 选项卡中定义环境变量或指定Arguments 选项卡中的参数。但是都没有用...(也许我没有正确配置)

最佳答案

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

您可以在 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 测试的任何类别的额外类。

关于java - 如何在 Eclipse 中指定 JUnit 类别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34957983/

相关文章:

java - 赋值和函数值计算是原子操作吗?

java - eclipse中如何调试一系列Aspect?

eclipse - 如何在 Eclipse 上卸载 git?

java - 通过 Eclipse 的 SVN - 无法运行我 checkout 的代码

java - 用于 Android 测试的 JUnit 5

java - 正则表达式并不总是使用尖括号

java - 解析数据时出错[java.lang.String类型的值p无法转换为JSONObject

java - Maven编译错误: package org. junit不存在

java - 在 Java 中使用 org.json.simple 解析不带引号的 JSON 键

eclipse - Webnoir网站为Eclipse项目,找不到资源