在自动化测试时,我会使用命令行程序 MSTest.exe。我将传入一个参数,该参数将指定我希望将测试结果文件保存到的位置。
我的问题是我希望能够从 Visual Studio GUI 运行测试,并且仍然能够为测试结果文件指定位置。
我这样做的原因是我正在编写一些代码来读取测试结果文件(因为它是 XML 格式),然后将结果通过电子邮件发送到指定的电子邮件地址。
无论我是通过 MSTest.exe 还是通过 Visual Studio GUI 运行测试,我都希望我的测试能够从同一位置获取测试结果文件。
我知道我可以通过从“测试结果”窗口中选择“导出测试运行详细信息”选项在 GUI 中执行此操作。我想知道如何以编程方式执行此操作,以便在测试运行完成后自动执行该操作。
...或者,是否有类可以让我以编程方式访问测试结果信息?例如,我相信有一个 TestResult 类可能对我有所帮助,尽管我不太确定如何使用它。我还注意到 TestContext 类具有诸如“DeploymentDirectory”之类的属性,但它们是只读的。
另外,我在其他地方在线阅读到,使用 VS2008,您可以编辑 .testrunconfig 文件以在 TestRunConfiguration 元素中添加以下行:
'<'部署 userDeploymentRoot="C:\TestResults" useDefaultDeploymentRoot="false" />
但是我的解决方案中不存在 .testrunconfig 文件,并且我的 .vsmdi 文件中也没有出现 TestRunConfiguration 元素。
任何帮助表示赞赏,谢谢。