我会尽量说清楚
我有一个名为 IntegrationTests 的 MSTest 项目
我在 IntegrationTests 文件夹中有一个 PowerShell 脚本。此脚本使用 MSTest 命令行参数运行测试。
测试已成功调用,但在所有测试运行后,我的测试方法中调用了一种方法来创建报告。当它试图加载 report.xslt 文件时,它正在添加额外的文件夹“TestResults”
Unexpected
................
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\Users\dev\Desktop\Test Runner\IntegrationTests\TestResults\Report Generator\Reports\report.xslt
Expected
................
C:\Users\dev\Desktop\Test Runner\IntegrationTests\Report Generator\Reports\report.xslt
为什么要添加这个“TestResults”额外文件夹?
只是为了让事情清楚,当我从 Visual Studio 运行这个项目时,这个项目是 100% 工作的。
如果您想知道在 c# 中是如何构造相对路径的,这里是代码
var directory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().CodeBase);
var xslt = new XslCompiledTransform();
xslt.Load(Path.Combine(directory, "..\\..\\Report Generator\\Reports\\report.xslt"));
我只想知道如何摆脱“TestResults”,以便我的测试可以正常运行。任何帮助真的很感激。