JUnit忽略代码更改(使用已编译代码的缓存版本?)

时间:2016-05-15 12:42:09

标签: java eclipse maven junit

嗯,我不认为我遇到过这样的问题。 JUnit完全忽略了我在测试的* .java文件中所做的任何更改。一旦我运行它,它只执行旧订单。我尝试添加一个新代码,它仍然执行相同,我尝试在这个类中注释掉其他测试用例,它仍然执行它们就好像它都被缓存了一样。我尝试清理整个项目,但它没有帮助。我尝试重新打开Eclipse,也没有帮助......

帮助我使用我的更改正确执行测试的唯一方法是创建一个克隆类,其中复制的代码具有不同的类名,然后JUnit实际执行了更改的代码而不是使用缓存的版本然后,但这是一个解决方法,然后是一个解决方案,我想知道这可能是什么解决方案?

我正在使用JUnit 4.11:

<dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.11</version>
    </dependency>

我真的不认为我曾经遇到过这个问题......我可能在一段时间之前忽略了代码中的变化而遇到了一些问题,这通常可以通过清理项目,但从来没有像这样的JUnit问题。我无法找到与此类问题相关的帖子。

1 个答案:

答案 0 :(得分:1)

JUnit本身不会编译任何内容,也不会决定编译什么,也没有任何缓存。其他工具如IDE或构建工具负责。

如果从Eclipse运行测试,我认为这是Eclipse问题。打开菜单项“项目”,然后查看是否选中“自动构建”复选框。

如果这没有帮助,请尝试再次创建项目。如果这没有帮助,请再次创建整个工作区。