TestClass中的多种测试方法

时间:2014-05-29 23:32:36

标签: unit-testing c#-4.0

您好我对单元测试在Visual Studio默认测试包中的工作原理感到好奇。我有三个用TestMethod属性标记的测试方法,标记有TestClass属性。

现在,当我运行所有测试时: 1.运行时为每个测试方法创建一个新的类实例? 2.每个方法是否在一个线程中并行运行?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

直接回答你的问题:

  1. 为每个包含的TestClass创建单独的TestMethod实例。

  2. 每个测试都可能在自己的线程上执行,允许测试并行运行。

  3. 此信息可在this MSDN blog post

    中找到
      

    在MSTest中,每个测试都在一个单独的线程上实例化,这会导致运行交错。

    此外,这就是ClassInitialize方法是静态的原因:由于测试之间不共享TestClass实例,因此测试可以通过静态变量共享状态的唯一方法。