我遇到Nunit的问题,我在运行测试时无法找到图像文件,每次查找图像时,它都会在Nunit文件夹中查找,而不是查看二进制文件所在的文件夹。以下是对正在发生的事情的详细描述。
所以我不知道为什么代码会这样做,并且当我拉出Enviornment.CurrentDirectory时它让我更加困惑它给了我正确的路径(我的调试文件夹的路径)而不是nunit的路径。此外,如果我使用它而不是使用相对路径,我的测试将运行没有问题。所以我的问题是,有没有人知道为什么在从我的二进制文件中加载相对路径的情况下,nunit决定使用它的目录而不是二进制文件所在的目录以及存储图像的位置?感谢。
答案 0 :(得分:0)
我不确定为什么会发生这种情况,但是想提一些可能会帮助您排除故障的事情。您的测试中是否有任何Path Constraint断言?它可能会帮助您解决此问题。
以下是NUnit.org链接的语法:http://www.nunit.org/index.php/extensions/docs/2.4/files/index.php?p=pathConstraints&r=2.5.1
以下是相对路径语法的示例(来自上面的链接)。您可能希望断言您的相对路径与绝对路径相同,并查看发生了什么。至少你会对你需要通过的路径进行特定的失败测试。
Assert.That( "/folder1/./junk/../folder2",
Is.SamePath( "/folder1/folder2" ) );
Assert.That( "/folder1/./junk/../folder2/x",
Is.Not.SamePath( "/folder1/folder2" ) );