Visual Studio 2012测试资源管理器测试正在进行中

时间:2013-04-24 21:06:32

标签: c# visual-studio visual-studio-2012 test-explorer

在Visual Studio 2010中,“测试结果”视图能够显示当前正在进行的单元测试。在使用Visual Studio 2012时,我无法识别在测试资源管理器中执行的单元测试。如何在Visual Studio 2012测试资源管理器中识别正在进行的单元测试?

1 个答案:

答案 0 :(得分:3)

ITestExecutor的接口,它是单元测试插件的必需接口,显示RunTests的上下文为IFrameworkHandle

public interface ITestExecutor
{
   void RunTests(IEnumerable<string> sources, IRunContext runContext, IFrameworkHandle frameworkHandle);
   void RunTests(IEnumerable<TestCase> tests, IRunContext runContext, IFrameworkHandle frameworkHandle);
   void Cancel();
}

IFrameworkHandle具有记录测试状态的方法

RecordStart(TestCase testCase)
RecordResult(TestResult testResult)
RecordEnd(TestCase testCase, TestOutcome testOutcome)

因此,在测试运行时,测试窗口可能会显示一个图标。但是,我使用向导创建的MS-Test类库构建了一个测试夹具,因为我预计它将是所有跑步者中功能最齐全的。我添加了以下测试类

[TestClass]
public class UnitTest1
{
    [TestMethod]
    public void TestMethod1()
    {
        Thread.Sleep(10000);
        Assert.IsTrue(true);
    }
}

没有迹象表明测试运行了10秒钟。所以我想说VS2012的[Update 3 RC]测试窗口没有显示当前正在运行的测试。未来的更新可能会改善这种情况,因为考虑到单元测试框架的API,它似乎完全可能。

相关问题