【问题标题】:Having output from UnitTest in the "Out" folder in TestResults' deploymentFolder, with MSTest in Visual Studio在 TestResults 的 deploymentFolder 的“Out”文件夹中具有 UnitTest 的输出,在 Visual Studio 中使用 MSTest
【发布时间】:2016-12-31 06:30:10
【问题描述】:

我对视觉工作室很陌生。我有视觉工作室社区 2015。

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

我已经看到,在每次运行测试时,都会在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

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

提前感谢您的帮助。

【问题讨论】:

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


    【解决方案1】:

    我不会解释 .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

    如果您在 [TestMethod] 中更早需要 TestContext,则需要在您的 TestClass 中使用 public static void TestInit(TestContext testContext) 方法,以便在创建 Class 时获得 TestContext 的实例。

    还有一些属性如 TestLogsDir、TestDir 已被弃用,您可以在 MSDN 文档中阅读有关它的内容。

    【讨论】:

    • 感谢您的信息。我只想指出,从 MSTest.TestFramework.1.3.2 开始,TestDeploymentDir 属性在摘要中提到了这一点:Same as Microsoft.VisualStudio.TestTools.UnitTesting.TestContext.DeploymentDirectory. Use that property instead.
    猜你喜欢
    • 2013-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-13
    • 1970-01-01
    相关资源
    最近更新 更多