即使文件发生变化,JUnit测试用例也不会改变

时间:2014-04-30 12:03:31

标签: java eclipse maven junit

我使用Eclipse和Maven并进行了一次JUnit测试,只是为了测试它是否有效。第一次运行测试时,一切都按预期进行,但从那时起,每次运行它时,即使我改变了实际的测试文件内容,也会得到相同的结果。

我试过清空文件,然后说没有JUnit测试文件。但只要我在该文件中的方法前面只有@Test,我总能得到相同的结果。 有谁知道为什么会这样?

我尝试重新启动eclipse。

编辑: 刚刚意识到我没有得到测试结果,因为在测试之前有一个例外。所以,问题是即使我更改了文件,我也总是得到异常。

Testclass:

public class zipTester {
/**
 * The class to be tested on.
 */
private Generator generator;

/**
 * Sets up the generator.
 */
@Before
public void setUp() {
    generator = new Generator(null, 0);
}
/**
 * Creates a zip file and tests whether it exists.
 */
@Test
public void testCreateZip() {
    File file = new File("/Users/nicola/Documents/trunk);
    generator.createZip(file, new Vector<File>());
}
}

更改了TestClass:

public class zipTester {
    @Test 
    public void heyo() {

    }
}

始终获得以下例外:

java.io.FileNotFoundException:/ Users / nicola / Documents / trunk(没有这样的文件或目录) ...

2 个答案:

答案 0 :(得分:2)

1可能你应该清理你的项目
2然后重新检查项目 - BuildAutomatically
如果还有问题,
您可以右键单击项目“java build path”并打开第一个选项卡来源 设置默认输出文件夹内容“test / target / classes”
祝你好运:)

我认为您的代码不是由eclipse编译的

答案 1 :(得分:0)

似乎在相关位置没有文件时发生。因为您将文件传递给Generator并尝试访问该文件。然后发生此异常,因为没有文件可以使用生成器访问。

您可以按照以下步骤来避免这种情况。

首先检查该文件是否存在于该位置,如下所示

文件文件=新文件(&#34; / Users / nicola / Documents / trunk&#34;); assertTrue(file.exists());

然后查看您的发电机。