我正在Eclipse项目中使用TestNG进行测试,但是我遇到一个奇怪的错误:当我尝试从业务类生成一个测试类时,弹出一个窗口显示“网格不可编辑”(标题),“编译单元无法编译,或不是junit.framework.TestCase的子类。请修复后重试”(正文)。 不知何故,Eclipse似乎认为我想创建JUnit类,而我不明白其中的原因。有线索吗?配置: Eclipse 3.6.0 TestNG 5.14.10
谷歌的CodePro Analytix是一款新开源的静态分析工具,它是问题的原因。它创建了一个新的默认编辑器过滤器,尝试使用特定的JUnit编辑器打开每个以“Test”结尾的类。另一方面,Eclipse的TestNG插件使用被测试类名称生成测试类,并在末尾添加“Test”。因此,当您使用TestNG插件创建测试类时,默认情况下会使用CodePro Junit编辑器打开它,而该编辑器会显示一个错误弹出窗口,指示该类不是有效的JUnit测试类。解决方法是在Eclipse首选项中删除编辑器过滤器:Window -> Preferences ; General -> Editors -> File Associations选择*.java文件类型,选择Java Editor,然后单击“默认”按钮。