如何在测试 运行 期间访问测试结果?

How to access test results during a test run?

我正在使用标准的 Microsoft 方法创建自动化测试(MTM、实验室、CodedUI/UI 自动化框架)。

在我的测试方法中,我创建了一个测试 运行ner,它可以按一系列步骤执行测试。这些步骤与测试用例中捕获的步骤一致。

我想做的是在步骤失败/通过时开始将步骤/操作结果添加回测试结果。

那里有很多信息,但我找到的每个示例和博客都指的是:

// Create a new test run
ITestRun run = plan.CreateTestRun(false);

这将创建一个新测试 运行,然后您需要从那里填充结果。这种方法的问题是我的测试已经 运行ning。我想访问当前测试 运行。

测试上下文对象:https://msdn.microsoft.com/en-US/library/ms404699(v=vs.80).aspx,对此没有提供任何帮助。

我什至不能完全确定是否可以在操作完成之前添加结果,但我想应该可以。

但是如何从 运行ning 测试用例中访问测试 运行(即使我只能获得一个 ID)?

如果测试结果是指 HTML 日志,您可以像这样找到它的路径:

string htmlLogPath = String.Format(@"{0}\UITestActionLog.html", TestContext.TestResultsDirectory);

之后您当然可以打开它,并向其中添加自定义结果。