【问题标题】:How to get the test name from a TestCleanup method?如何从 TestCleanup 方法中获取测试名称?
【发布时间】:2017-05-24 00:07:32
【问题描述】:

我注意到[TestCleanup] 方法不能采用TestContext 参数。那么我应该如何知道正在清理哪个测试?

【问题讨论】:

  • 您是否需要了解因任何特定原因正在清理的测试?

标签: c# .net visual-studio unit-testing mstest


【解决方案1】:

您可以在您的类上拥有一个名为 TestContext 的公共属性,该属性将由 MSTest 设置,例如:

[TestClass]
public class UnitTest1
{
    public TestContext TestContext { get; set; }
    [TestMethod]
    public void TestMethod1()
    {
        var x = 2;
        var y = 1 + 1;
        Assert.AreEqual(x, y);
    }

    [TestMethod]
    public void TestMethod2()
    {
        Assert.AreEqual(true, true);
    }

    [TestCleanup]
    public void TestCleanup()
    {
        Debug.WriteLine(TestContext.TestName);
    }
}

【讨论】:

  • 像魅力一样工作(是)
猜你喜欢
  • 1970-01-01
  • 2012-11-10
  • 1970-01-01
  • 2012-03-28
  • 2012-09-24
  • 1970-01-01
  • 2016-08-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多