在Visual Studio 2010中,“测试结果”视图能够显示当前正在进行的单元测试。在使用Visual Studio 2012时,我无法识别在测试资源管理器中执行的单元测试。如何在Visual Studio 2012测试资源管理器中识别正在进行的单元测试?
答案 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,它似乎完全可能。