我目前正在VB.Net项目中使用Microsoft.VisualStudio.TestTools.UnitTesting Attribute <TestCleanup()>
。
因为我的一些测试可能让世界变得有点混乱(在失败之后),我需要找出运行特定清理的测试是否失败。此外,“当前”测试的实际名称(我正在清理的那个)将有所帮助。
有没有办法访问这些信息?
答案 0 :(得分:1)
如果您还没有,那么您需要为您的类添加TestContext属性。这将由测试运行器填充,然后您可以在清理中检查它。
您感兴趣的位是TestContext.TestName
,表示当前正在执行的测试名称,TestContext.UnitTestOutcome
表示测试成功状态。
这样的事情:
Public Property TestContext As TestContext
<TestCleanup> Public Sub Cleanup()
If (TestContext.CurrentTestOutcome = UnitTestOutcome.Passed And
TestContext.TestName = "TestMethod1") Then
'Do something
Else
'Do something else
End If
End Sub