1 回答
TA贡献1790条经验 获得超9个赞
您的解决方案不起作用,因为这是 MSTest v1 示例,并且很可能您正在使用 MSTest v2。您不会在TestContextv2 中的 a 中找到消息,因为那里不存在该消息。您需要检查TestResult类才能获取此消息。
获取TestResult类的一种方法是重写TestMethodAttribute并使用它,如下例所示:
using Microsoft.VisualStudio.TestTools.UnitTesting;
namespace TestProject
{
[TestClass]
public class UnitTest
{
[MyTestMethod]
public void TestMethod()
{
Assert.IsTrue(false);
}
}
public class MyTestMethodAttribute : TestMethodAttribute
{
public override TestResult[] Execute(ITestMethod testMethod)
{
TestResult[] results = base.Execute(testMethod);
foreach (TestResult result in results)
{
if (result.Outcome == UnitTestOutcome.Failed)
{
string message = result.TestFailureException.Message;
}
}
return results;
}
}
}
- 1 回答
- 0 关注
- 108 浏览
添加回答
举报