Java 如何使用gradle为Junit测试授予写权限

Java 如何使用gradle为Junit测试授予写权限,java,linux,gradle,junit,build.gradle,Java,Linux,Gradle,Junit,Build.gradle,我有一个用JavaGradle配置的测试套件。Junit测试涉及io文件的写入/读取 当我使用window machine和gradlew.bat测试时,所有测试都通过。 然而,如果我尝试在linux机器上运行相同的测试套件,那么所有的测试都会失败。 我认为问题在于许可。我有什么办法可以修吗 我是如何创建文件的: File file = new File(String.format("./%s/e2eTest/Delete/Hello.txt", root)); file.cr

我有一个用JavaGradle配置的测试套件。Junit测试涉及io文件的写入/读取 当我使用window machine和
gradlew.bat测试时
,所有测试都通过。 然而,如果我尝试在linux机器上运行相同的测试套件,那么所有的测试都会失败。 我认为问题在于许可。我有什么办法可以修吗

我是如何创建文件的:

    File file = new File(String.format("./%s/e2eTest/Delete/Hello.txt", root));

    file.createNewFile();

    FileWriter writer = new FileWriter(file);
    writer.write("Test data\n");
    writer.close();
Unirest.delete(String.format("http://localhost:%d/e2etest/delete/hello.txt",port)).asString().getStatus();
如何访问该文件:

    File file = new File(String.format("./%s/e2eTest/Delete/Hello.txt", root));

    file.createNewFile();

    FileWriter writer = new FileWriter(file);
    writer.write("Test data\n");
    writer.close();
Unirest.delete(String.format("http://localhost:%d/e2etest/delete/hello.txt",port)).asString().getStatus();
服务器端:

File f = new File(root+request.getUri())

为了确保您具有写访问权限,我建议您在
java.io.tmpdir
系统属性指定的文件夹下创建文件

一种简单的方法是在junit测试中使用规则,该规则将在测试完成后删除所有内容

例如:


另请参见

@janos由于不存在文件(该文件是在测试设置中创建的),输出只是junit断言不匹配。请显示文件创建和访问。@Chieftwoils添加