找出下一个测试方法在MS TestInitialize执行(Find out the next te

2019-09-21 22:43发布

我把测试数据文件夹中特定的测试方法命名一样的功能。 我以前有在同一个函数调用每个[TestMethod]ClearAllAndLoadTestMethodData()其经由所确定的方法名StackTrace 。 现在,我搬到这个函数[TestInitialize] 我怎样才能发现即将执行的方法的名称?

我想TestContext提供这一点。 我必须通过访问它[AssemblyInitialize()] ,并在第一次运行它的属性Name设置为TestMethod的名称。 不过,后来这不会改变(如果我保存静态字段的对象)。

Answer 1:

该AssemblyInitialize所有测试之前只执行一次的方法。

使用TestContext里面TestInitialize方法:

[TestClass]
public class TestClass
{
    [TestInitialize]
    public void TestIntialize()
    {
        string testMethodName = TestContext.TestName;
    }

    [TestMethod]
    public void TestMethod()
    {
    }

    public TestContext TestContext { get; set; }
}


文章来源: Find out the next test method to execute in MS TestInitialize