背景:我有一堆单元测试.NET
需要设置一些配置数据才能运行。最初,我使用TestInitialize
andTestCleanup
来设置和拆除每个测试周围的配置数据;但是,对于整个测试套件来说,一个设置就足够了,所以我更喜欢使用ClassInitialize
andClassCleanup
来代替。
问题:当我将属性从TestInitialize
to更改ClassInitialize
并运行测试时,我收到以下错误:
MyTestClass.ClassInit 的签名错误。该方法应标记为静态。
这个属性背后的设计原因是什么要求它的方法是静态的?我所有的测试方法都是实例方法,所以我假设我的测试类至少有一个实例被创建在某个地方以便运行它们。为什么那个实例以后不负责清理?
我确实检查了MSDN,他们没有明确提到静态要求,尽管他们确实有一个很好的例子来说明它的用法。