以下に、@TempDirをインスタンスフィールドとして使用する方法を示します。
- テストクラスで一時ディレクトリのインスタンスフィールドを定義します。
import org.junit.jupiter.api.io.TempDir;
import java.io.File;
public class MyTest {
@TempDir
public File tempDir;
// テストメソッドをここに追加する
}
- テストメソッド内で
tempDir
フィールドを使用して一時ディレクトリを操作します。
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.io.TempDir;
import java.io.File;
public class MyTest {
@TempDir
public File tempDir;
@Test
public void myTestMethod() {
// tempDirを使用してファイルやディレクトリを作成する
File file = new File(tempDir, "example.txt");
file.createNewFile();
// テストのロジックをここに追加する
}
}
上記の例では、@TempDir
アノテーションを使用してtempDir
フィールドが一時ディレクトリとして注入されます。テストメソッド内では、このフィールドを使用して一時ディレクトリ内で必要なファイルやディレクトリを作成します。
これにより、テストメソッドごとに異なる一時ディレクトリが提供され、テスト間の相互影響を回避することができます。
以上が、JUnit 5で@TempDirをインスタンスフィールドとして使用する方法です。