16

我在 Eclipse 项目中使用 TestNG 设置测试,但我收到一个奇怪的错误:当我尝试从业务类生成测试类时,我收到一条弹出消息,显示“网格不可编辑”(标题)“编译单元不可编译,或者不是 junit.framework.TestCase 的子类。Fix and tyr again”(正文)。不知何故,Eclipse 似乎认为我想创建 JUnit 类,但我不明白为什么。有什么线索吗?

配置:

  • 日食 3.6.0
  • 测试NG 5.14.10
4

1 回答 1

53

新开源的静态分析工具 Google CodePro Analytix 是问题的根源。它创建了一个新的默认编辑器过滤器,该过滤器尝试使用其特定的 JUnit 编辑器打开名称以“Test”结尾的每个类。另一方面,Eclipse 的 TestNG 插件使用测试的类名称生成测试类,并在末尾添加“Test”。因此,当您使用 TestNG 插件创建测试类时,默认情况下会使用 CodePro Junit 编辑器打开它,它会显示一个错误弹出窗口,说明该类不是有效的 JUnit 测试类。解决方案是删除 Eclipse Preferences 中的编辑器过滤器:

窗口 -> 首选项;常规 -> 编辑器 -> 文件关联

选择 *.java 文件类型,选择 Java Editor 并单击“默认”按钮。

于 2011-03-01T15:00:18.320 回答