gpt4 book ai didi

java - 如何测试 java NIO 静态方法?

转载 作者:行者123 更新时间:2023-12-01 08:53:07 29 4
gpt4 key购买 nike

如何测试 java NIO 静态方法?

我有一个方法

public Stream<String> getFileInformation(Provider provider) {
Path feedDirectoryPath;
DirectoryStream<Path> stream;
List<Path> files = new ArrayList<>();

try {

feedDirectoryPath = getFeedDirectoryPath();

if (!isFileExists(feedDirectoryPath)) {
return null;
}

stream = getDirectoryStream(feedDirectoryPath);

for(Path p : stream) {
files.add(p);
}

return Files.lines(Paths.get(files.stream().toString()));

} catch (Exception e) {
return null;
}
}

我必须测试这个方法,但是一旦我的测试到达 Files.lines(..),我就陷入了困境。我不知道如何断言这一点,当然如果我要传递像 Path filePath = Paths.get("dummy.txt"); 这样的文件路径将抛出 NoSuchFileException。任何测试此方法的帮助将不胜感激。

最佳答案

您可以为其提供实际文件(例如,如果您使用的是 Maven,则在 src\test\resources 文件夹中),或者使用 PowerMock 模拟静态方法。我建议第一个,应该可以加载一个文件(例如使用类加载器相对于您的测试类)并将其用作被测方法的输入。

关于java - 如何测试 java NIO 静态方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42247771/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com