【问题标题】:How to run several Spock tests in Eclipse in one click如何在 Eclipse 中一键运行多个 Spock 测试
【发布时间】:2014-08-26 19:59:55
【问题描述】:

我正在 Eclipse 中开发一个 Java 项目。我可以一个一个地运行我的 Spock 测试,但这有点乏味。

我的项目只包含两个目录:

  • 一个包含我所有 Java 文件的 src 目录
  • 一个包含我所有 Spock 测试的 test 目录

我不使用任何自动化构建系统。

如何一键运行所有 Spock 测试? 谢谢

【问题讨论】:

  • 您的项目是如何设置的?这些多个测试是否跨同一目录中的多个文件?多个目录?您使用的是什么构建系统?

标签: eclipse unit-testing spock


【解决方案1】:

如果您使用 Maven 和 Surefire Maven plugin,该插件将自动运行:

所有具有以下通配符模式的测试类:

  • **/Test*.java” - 包括其所有子目录和所有以“Test”开头的 java 文件名。
  • **/*Test.java” - 包括其所有子目录和所有以“Test”结尾的 java 文件名。
  • **/*TestCase.java” - 包括其所有子目录和所有以“TestCase”结尾的 java 文件名。

这是spockframework/buildsupport/maven/FindSpecsMojo.java 推荐的:

自动检测并运行 Maven 项目中的所有 Spock 规范的插件。

通过将它们作为<include>'s 添加到 Surefire 的 * 配置中来运行规范。

注意:Spock 和 Maven 一起使用时不需要这个插件;它只是增加了一些高级功能,例如自动检测规格。
如果您决定不使用此插件,请确保您的规范类符合 Surefire 的命名约定。
默认情况下,这些是:

  • **/Test*.java
  • **/*Test.java, 和
  • **/*TestCase.java

【讨论】:

    【解决方案2】:

    尝试转到 Run > Run Configurations 并选择 JUnit。您可能会在其下方看到一个列为 test。如果是这样,请单击它。如果没有,请右键单击树中的 JUnit 条目并单击 New。然后,您应该能够单击 test 条目并查看在单选按钮下方选择的 test 目录,用于 Run all tests in the selected project, package或源文件夹。如果没有,您应该能够选择该目录。您可能需要在选项卡上指定一些设置才能看到 Groovy 解释器等,但如果它适用于单个测试,则可能已经在很大程度上设置(或可选择)。

    然后,尝试在主导航窗格中的 test 目录上右键单击 右键单击,然后选择 Run As > JUnit Test (或类似的东西——它应该是你刚刚创建的条目)。这应该运行该目录中的所有测试。

    不使用构建系统可能如上所述,需要在 JUnit 测试配置的选项卡中进行一些额外的配置,但它应该是可行的(我通常使用 Gradle来管理我的构建,虽然我可以从命令行运行 gradle test 来运行所有测试,但我也可以从 Eclipse 中 Run As > JUnit Test)。

    【讨论】:

    • yes 右键单击​​测试目录并选择 Run As > JUnit 运行所有测试。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    • 1970-01-01
    • 1970-01-01
    • 2018-03-17
    相关资源
    最近更新 更多