DirectoryInfo.Exists在MSTest期间始终返回false

def*_*mer 3 .net directory file-io mstest directoryinfo

我在应用程序处理创建目录的边界上有一些逻辑.我想测试它实际上是按预期创建目录,但即使目录实际存在,DirectoryInfo.Exists属性也始终返回false.

另请参阅此问题 - 您需要设置断点以查看该目录是否已实际创建,因为MSTest将在测试结束时将其删除.

是否有一些设置告诉MSTest在测试期间允许"正常"的文件系统IO?

Bro*_*ass 7

假设您稍早创建DirectoryInfo实例,则会涉及目录状态的内部缓存 - 如果您调用DirectoryInfo.Refresh()强制更新,则此操作应该有效:

var dir = new DirectoryInfo(@".\someDir");
//...other things here
dir.Refresh();
bool doesExist = dir.Exists;
Run Code Online (Sandbox Code Playgroud)