【发布时间】:2016-10-05 21:30:27
【问题描述】:
我想编写一个单元测试一个与文件系统交互的功能(写入文件)。 我已经适应了它正在创建临时文件夹的那一刻的解决方案,使用:@Rule 注释和 TemporaryFolder 类。该文件将在单元测试后被删除。但是这个解决方案有两个缺点:
- 在 TU 期间与文件系统交互不是一个好习惯(类似于数据库和网络)
- 如果出现问题并且临时文件夹中的文件没有正确关闭,则永远不会删除此目录。
有没有一种方法可以编写单元测试来测试与文件系统交互的功能,而无需使用像 Mockito 这样的模拟框架?
【问题讨论】:
-
如果您曾使用过 Mockito,那么无论哪种方式,您都不会与文件系统进行交互。要么访问它,要么模拟它(通过 Mockito 或自己编写管道代码)。
标签: unit-testing junit