【发布时间】:2015-10-23 03:01:13
【问题描述】:
在 Visual Studio 2015 社区中,我有一个示例 ASP.NET 5 (vNext) 项目和一个带有单元测试的项目 (xUnit.net)。 DNX 的版本是 1.0.0-beta5。我的目标是在测试运行期间将消息添加到输出窗格。 Here我采取了这样的方式,所以我的单元测试代码是这样的:
using Xunit;
using Xunit.Abstractions;
namespace UnitTests
{
public class UnitTest1
{
ITestOutputHelper output;
public UnitTest1(ITestOutputHelper output)
{
this.output = output;
}
[Fact]
public void TestTestTest()
{
output.WriteLine("Test Message");
Assert.Equal(2, 2);
}
}
}
Visual Studio 测试资源管理器发现了这个测试(没关系),但我在 输出 窗格(来自测试)中只有:
------ Run test started ------
------ Test started: Project: UnitTests ------
Starting Microsoft.Framework.TestHost [C:\Users\*******\.dnx\runtimes\dnx-clr-win-x86.1.0.0-beta5\bin\dnx.exe --appbase "C:\Users\*******\Documents\Visual Studio 2015\Projects\MvcMovie\UnitTests" Microsoft.Framework.ApplicationHost --port 55837 Microsoft.Framework.TestHost --port 55893]
Connected to Microsoft.Framework.TestHost
Running tests in 'C:\Users\*******\Documents\Visual Studio 2015\Projects\MvcMovie\UnitTests\project.json'
========== Run test finished: 1 run (0:00:03,2267169) ==========
另外,在选择的测试运行信息下没有任何链接“输出”,如下所示: (仅“测试通过...经过的时间...”)
我应该怎么做才能使ITestOutputHelper 工作?
【问题讨论】:
-
我也遇到了同样的问题,一直没能找到解决办法。
-
@TimothyShields 但是,当测试失败时,它会出现。但如果它通过则不会(如图所示......)
-
有趣...你的意思是你确实得到了失败测试的输出?
-
@TimothyShields 是的,在同一个测试中,如果我写 Assert.Equal(2, 3),我会得到一个链接“输出”。单击它会出现带有“标准输出”文本块的新选项卡。
-
它不为成功的测试保存输出实际上可能是设计使然。
标签: c# visual-studio-2015 xunit.net dnx