告诉 Eclipse 跳过测试

Posted

技术标签:

【中文标题】告诉 Eclipse 跳过测试【英文标题】:Tell Eclipse to skip tests 【发布时间】:2014-07-23 03:57:33 【问题描述】:

有没有办法只告诉Eclipse 跳过各种单独的junit 测试(但仍然运行其余测试)?我熟悉 @Ignore 注释,但这不是我想要的,因为这会导致测试 always 被跳过。

我希望在 eclipse (Run As -> Junit Test) 运行时跳过测试,但在任何其他上下文中运行,很可能是在 maven 构建期间。

有什么想法吗?

【问题讨论】:

【参考方案1】:

到目前为止,以下解决方案运行良好。这不是一个完整的解决方案,因为它导致测试只能由 maven 在从命令行调用 maven 时运行。但就目前而言,它有效。

当 maven 被调用时,maven 命令行参数被放置在环境映射 (System.getenv()) 中。在 Eclipse 中通过 jUnit 运行测试时,System.getenv() 中没有 maven 命令行参数的条目。因此,我正在使用 jUnits Assume 类来检查该属性对于我希望 eclipse 跳过的测试是否为空。

代码:

Assume.assumeNotNull(System.getenv("MAVEN_CMD_LINE_ARGS"));

仅供参考,此解决方案的一个缺点是 eclipse 将测试标记为 通过 而不是 已跳过

【讨论】:

以上是关于告诉 Eclipse 跳过测试的主要内容,如果未能解决你的问题,请参考以下文章

eclipse整合maven打包的时候跳过测试

编译时如何告诉eclipse添加导出

eclipse maven install 跳过 test 阶段

Antlr Eclipse IDE White Space 未被跳过

如何在没有 Maven 的情况下同时运行 Eclipse Java 项目的所有 JUnit 测试?

eclipse中的debug模式的使用