在TestResults的deploymentFolder的“Out”文件夹中输出UnitTest,在Visual Studio中使用MSTest

时间:2016-08-24 08:14:59

标签: c# visual-studio visual-studio-2015 mstest

我是视觉工作室的新手。我有2015年的视觉工作室社区。

我想要做的是在使用MSTest在unittest中输出特定数据时,我想将输出保存到文件中。

我已经看到,在每次运行测试中,都会在TestResuls/Deploy_username date hour/out中自动生成一个文件夹。我正在寻找一种方法来保存该文件夹中的测试输出。

这可能或是否有其他方法来复制文件或报告我的数据? 我查看了以下链接: https://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.deploymentitemattribute.aspx

https://msdn.microsoft.com/en-us/library/ee256991.aspx

DeploymentItem not deploying files

Generating Unit Test Reports in Visual Studio 2013

这些链接都没有帮助我实现我想要的目标。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

我不会解释如何在.Net中处理文件输出,我认为你有这方面的知识。

如果您使用属性TestClass声明了[TestClass],则可以添加类型TestContext的公开属性TestContext(请参阅MSDN),这将获得在执行测试时由MSTest设置。 您有属性TestResultsDirectory(通常指向“IN”文件夹)和TestDeploymentDir(通常指向“OUT”文件夹)。 例如:TestContext.TestResultsDirectory将导致“ D:\ Visual Studio 2015 \ Projects \ UnitTestProject1 \ TestResults \ Deploy_user 2017-02-23 07_37_49 \ In

如果您之前需要TestContext,那么在[TestMethod]中需要在TestClass中使用public static void TestInit(TestContext testContext)方法,这样您就可以在创建类时获得TestContext的实例。

还有一些不推荐使用的TestLogsDir,TestDir等属性,你可以在MSDN文档中阅读它。