我很好奇为什么夹具设置必须是静态的?在我看来,每个灯具具有共享灯具寿命的实例变量似乎更直观。

是的,可以在构造函数中对其进行初始化,但是然后我认为它们超出了测试运行程序的控制范围。

有哪些设计要求或理念确定设置方法应该是静态的?

最佳答案

具有ClassInitialize属性的方法对于该类中的所有测试运行一次。每次运行测试时都会创建该类的实例,因此该类的实例必须是静态的,才能仅运行一次。

如果要为每个测试进行初始化,则可以使用TestInitialize属性,该属性将在创建类的新实例时运行(在运行测试之前)。

如果您需要更多信息,可以 checkout :

That Pesky MSTest Execution Ordering

08-26 14:43