为什么每个 [TestMethod] 都会多次调用 [TestClass] 的构造函数?
Why is [TestClass]'s constructor called multiple times for each [TestMethod]?
如果您在一个测试中有多个测试方法class。 Class 的构造函数将 运行 多次。我们如何解释这种超载?
根据我对 MSTest 的理解,每个 [TestMethod]
都会实例化测试 class。我猜您正试图在任何测试 运行 之前 运行 配置代码。如果是这样的话,我会推荐你:
A) 更新您的问题以解释您究竟想要完成什么
B) 使用 [ClassInitialize]
属性将方法标记为 运行 一次,并且在任何 class 的测试为 运行 之前仅一次
ClassInitialize 的作用
ClassInitialize
是使用 MSTest 在 C# 中编写单元测试时可用的众多属性之一。比较常见的包括 TestClass
、TestMethod
和 TestInitialize
。这表明该方法应该在 运行 任何标有 TestMethod
的方法之前 运行 一次。在所有测试方法获得 运行.
之后,还有另一个属性与它密切相关,称为 ClassCleanup
,它获得 运行
您可以在 docs.microsoft.com
阅读有关这些和更多属性的更多详细信息
如果您在一个测试中有多个测试方法class。 Class 的构造函数将 运行 多次。我们如何解释这种超载?
根据我对 MSTest 的理解,每个 [TestMethod]
都会实例化测试 class。我猜您正试图在任何测试 运行 之前 运行 配置代码。如果是这样的话,我会推荐你:
A) 更新您的问题以解释您究竟想要完成什么
B) 使用 [ClassInitialize]
属性将方法标记为 运行 一次,并且在任何 class 的测试为 运行 之前仅一次
ClassInitialize 的作用
ClassInitialize
是使用 MSTest 在 C# 中编写单元测试时可用的众多属性之一。比较常见的包括 TestClass
、TestMethod
和 TestInitialize
。这表明该方法应该在 运行 任何标有 TestMethod
的方法之前 运行 一次。在所有测试方法获得 运行.
ClassCleanup
,它获得 运行
您可以在 docs.microsoft.com
阅读有关这些和更多属性的更多详细信息