来自[TestMethod]的Directory.CreateDirectory表现得很奇怪

时间:2011-03-06 15:15:13

标签: c# testing filesystems directory

我真的在这个黑暗中...我已经创建了一些批处理代码,并且在调用要测试的方法之前有几个设置目录结构的测试。

可以说明问题
    [TestMethod]
    public void StupidTest()
    {
        Directory.CreateDirectory("./XXX");
        Assert.IsTrue(Directory.Exists("./XXX"));
        //new FileInfo( "./XXX/YYY.txt").Create().Close();
    }

当最后一行被注释掉时,测试运行完美,但在testresults的“Out”文件夹中,没有创建任何文件夹。当包含最后一行时,测试也会运行,并且XXX文件夹和YYY.txt文件都存在于测试运行的“Out”文件夹中。如果只有测试的最后一行包含在正文中,则测试失败,抱怨不存在路径。

我发现一些引用提到文件系统虚拟化的内容,而测试应用程序没有足够的权限在“Out”文件夹中创建文件夹。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

您可以尝试使用ProcessMonitor(来自MS下载站点,免费),并记录该过程的所有活动,然后我们可以看到该目录是否被创建,移动,删除等等。