JUnit测试文件的读取和写入

JUnit测试文件的读取和写入,测试主程序main的writer写入,写了好几次没头绪

该回答引用GPTᴼᴾᴱᴺᴬᴵ,具体如下:
以下是一个示例代码,演示如何使用JUnit测试读取和写入文件:


import static org.junit.Assert.assertEquals;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class FileTest {
    private String inputFile = "input.txt";
    private String outputFile = "output.txt";

    @Before
    public void setUp() throws IOException {
        // 准备测试数据
        BufferedWriter writer = new BufferedWriter(new FileWriter(inputFile));
        writer.write("Hello, World!");
        writer.close();
    }

    @After
    public void tearDown() {
        // 清理测试数据
        new File(inputFile).delete();
        new File(outputFile).delete();
    }

    @Test
    public void testFile() throws IOException {
        // 测试文件读取和写入
        BufferedReader reader = new BufferedReader(new FileReader(inputFile));
        BufferedWriter writer = new BufferedWriter(new FileWriter(outputFile));
        String line = null;
        while ((line = reader.readLine()) != null) {
            writer.write(line.toUpperCase());
        }
        reader.close();
        writer.close();

        // 断言测试结果
        BufferedReader outputReader = new BufferedReader(new FileReader(outputFile));
        assertEquals("HELLO, WORLD!", outputReader.readLine());
        outputReader.close();
    }
}

在这个示例中,setUp方法在每次测试运行之前准备测试数据,tearDown方法在每次测试运行之后清理测试数据。testFile方法测试了文件读取和写入,使用BufferedReader和BufferedWriter读取和写入文件,并断言结果是否正确。

如果以上回答对您有用,望采纳~谢谢