【问题标题】:Can I modify the mstest console output?我可以修改 mstest 控制台输出吗?
【发布时间】:2012-12-04 02:07:54
【问题描述】:

我有一些像这样运行的单元测试:

mstest /testcontainer:"Tests.dll"

我有什么方法可以修改或添加此命令的输出吗?我试过 Console.Writeline 和 this answer,但似乎都不起作用。

【问题讨论】:

  • 所有输出都从控制台和其他输出流重定向到 trx 文件。为什么在标准输出上需要这个输出?
  • 为学校做一个需要在控制台上进行详细输出的项目。

标签: .net console mstest verbosity


【解决方案1】:

像以前一样使用Console.Writeline,并使用/detail 开关运行MSTest

MSTest /testcontainer:"Tests.dll" /detail:stdout

代码

[TestMethod]
public void TestMethod1()
{
    Console.WriteLine("Output to console...");
}

输出

【讨论】:

  • 这很奇怪,在我的情况下我可以看到输出。
  • 嗯,这很奇怪。我今晚再试一次。
  • 有时会在控制台中得到一些东西。但也绝不会来自所有测试运行的所有输出。 MSTest 吓到我了。
【解决方案2】:

我没有从控制台尝试过,但通常我在 Visual Studio 中使用 TestContext。您也可以像 String.Format 一样使用它。然后,您可以在 Visual Studio 中查看测试结果并查看输出。

   public TestContext TestContext { get; set; }

   [TestMethod]
   public void MyTestMethod()
   {
       int value = 5;
       TestContext.WriteLine("This is my output for the test: {0}", value);
   }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-19
    • 1970-01-01
    • 1970-01-01
    • 2020-09-15
    • 2011-05-06
    • 1970-01-01
    • 1970-01-01
    • 2019-05-19
    相关资源
    最近更新 更多