Ich bin hier ein seltsames Problem mit Blick auf ...JUnit Regel TemporaryFolder wirft willkürlich eine IOException
Ich habe einen JUnit ein paar Tests zu implementieren. Diese Klasse sieht wie folgt aus:
public class MyTest {
@Rule
public TemporaryFolder folder = new TemporaryFolder();
@Test
public void myTest1() throws IOException {
String destinationPath = folder.newFile("destination1.txt").getPath();
// Do things
}
@Test
public void myTest2() throws IOException {
String destinationPath = folder.newFile("destination2.txt").getPath();
// Do things
}
@Test
public void myTest3() throws IOException {
String destinationPath = folder.newFile("destination.txt").getPath();
// Do things
}
}
Diese Testklasse, die in meinem früheren Umfeld zu arbeiten und tut immer noch in Continuum.
Doch wenn von Eclipse-keine Einführung, einige oder alle Tests willkürlich ein IOException
werfen wie:
java.io.IOException: The system cannot find the path specified
at java.io.WinNTFileSystem.createFileExclusively(Native Method)
at java.io.File.createNewFile(File.java:883)
at org.junit.rules.TemporaryFolder.newFile(TemporaryFolder.java:53)
at MyTest.myTest2(MyTest.java:50)
ich genau das gleiche Problem haben, laufen JUnit 4.9 oder JUnit 4.10 ...
Wie kann ich das beheben, damit es richtig funktioniert?
Das sollte funktionieren. Welchen "Runner" verwendest du zum Ausführen der Tests? Sind sie gleichzeitig? Vielleicht möchten Sie mehr debuggen, d. H. Die "Ordner" -Variable, um zu sehen, wo sie auf das Problem hinweist. –
Können Sie sagen, was Sie in den Tests machen? Schreibst du in die Dateien? Haben Sie auch Windows-Indexierung ausgeführt? –
Ja das Ziel des Programms ist es, Daten zu verarbeiten und eine Datei als Ausgabe zu schreiben. Es wird keine Windows-Indexierung ausgeführt. –