Archives du mot-clé Tempfile

Création de fichier temporaires

Lors de certains tests unitaire avec JUnit, il est nécessaire de créer des fichiers temporaires.
C’est tellement facile en Java, que nos tests unitaires créaient 1Go de fichiers temporaires par heure sur notre plateforme d’intégration continue.

Voici 2 pattern pour s’assurer que ces fichiers seront bien supprimés en fin de test :

1. TemporaryFolder avec JUnit 4 et plus

1
2
3
4
5
6
7
@Rule
public TemporaryFolder testFolder = new TemporaryFolder();
@Test
public void unTest () {
   File tempFile = testFolder.newFile();
   ...
}

2. Suppression manuelle

1
2
3
4
5
public void uneMethode () {
   File tempFile = File.createTempFile(prfix, suffixe+extension);
   ...
   tempFile.deleteOnExit();
}

Sous Windows, les fichiers temporaires sont créés dans @%TEMP%@ (C:\Users\{NAME}\AppData\Local\Temp), sous Linux, ils sont créés dans @/tmp@.