【问题标题】:Eclipse - When I create a JUnit Suite, the list of test classes is empty. Why?Eclipse - 当我创建 JUnit Suite 时,测试类列表为空。为什么?
【发布时间】:2013-02-15 19:27:34
【问题描述】:

我有一个包含 4 个测试类的包。我想做一个 JUnit 测试套件。所以在 Eclipse 中,我右键单击我的包并执行New > Other > JUnit Test Suite

向导有一个警告,“警告:未选择测试类”Test Classes to include in suite: 的列表为空。

我不知道为什么。我有几个带有public 方法的*Test.java 类,这些方法用@Test 注释。我通过JUnit Test Case 向导创建了这些...

我在其他 Stack Overflow 答案中看到了一些可用于创建测试套件的代码,但为什么它不能在 IDE 中运行?

我什至应该为测试套件烦恼吗?看来我可以右键单击该包和Run As > JUnit Test

【问题讨论】:

    标签: java eclipse junit


    【解决方案1】:

    您是否在New -> Other > JUnit Test Suite 菜单中选择了正确的包?通过使用“浏览...”按钮选择一个包,您应该会看到您的测试类。

    您可以在项目上直接使用Run As > JUnit Test 运行所有测试,但如果您有许多测试类,建议使用测试套件重新组合它们(例如:较慢的测试、对程序特定部分的测试、等等)。

    查看this post 以了解有关 JUnit 测试分组的更多信息。

    【讨论】:

    • 我从右键单击我的包开始,所以Source FolderPackage 已经填充了正确的值。套件NameAllTests
    • 你选择了正确的 JUnit 版本吗?您可以使用单选按钮在 JUnit3 和 4 之间切换。另外,您是否确保您的构建路径中有 JUnit 库(我猜是因为您使用 @Test 注释创建了方法......!)
    • 我的 JUnit 测试用例是 Junit 4。向导没有提供 JUnit 测试套件的选项。 JUnit 4 在我的Java Build Path 中。
    • 听起来像是一个 Eclipse 错误...在我看来一切都很好...如果您有更多信息可以帮助我们找到问题的原因,请告诉我!
    • 你可能是对的。我刚刚创建了一个全新的项目、新的类、新的 Junit 测试,并且在创建套件时遇到了同样的问题。仅供参考,我在 Red Hat 6.3 上有 Eclipse Platform Version: 3.6.3.r362_v20110302
    【解决方案2】:

    是的,不要打扰套房。

    您可以选择项目并将其作为 junit 测试运行。 Eclipse 会找到所有的测试并运行它们

    【讨论】:

    • 不确定我是否同意这一点。我有很多测试用例包,选择每个测试用例会很耗时,并且会破坏单击一次运行测试套件的目的。现在我可以将所有测试包放入另一个包中,但这会改变我的项目架构。
    • 不是包,是项目。
    【解决方案3】:

    同样的事情发生在我身上,解释很简单: 您已经使用 JUnit Jupiter 编写了测试。

    但是,JUnit 测试套件向导让您只选择 这 2 种类型的套件:JUnit3JUnit4

    重构您的测试以符合 JUnit3 或 JUnit4 将使它们在 JUnit 测试套件向导中可见。

    【讨论】:

    • 所以你说 Eclipse 不支持自动创建 JUnit 5 测试套件?
    【解决方案4】:

    只需使用 package.json 对 junit 测试用例进行分组。检查每个测试用例的成功和失败计数更可靠。

    【讨论】:

      猜你喜欢
      • 2017-05-02
      • 2014-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-16
      • 1970-01-01
      相关资源
      最近更新 更多