测试类可以具有属性吗?

Tom*_*Tom 0 c# oop testing unit-testing

我正在为一个应用程序的单元测试创​​建一个TestClass,我想做的一件事就是运行一个测试方法,检查方法已经正确运行,根据结果在测试类中的类属性中存储一个值,然后使用它以后的方法中的值.

我试过这样做,发现只要编译器从一个方法移动到另一个方法,我设置的所有属性都被擦除干净.我已经检查了断点,并在第一个方法的末尾,值在属性中,然后在第二个方法的开头,相同的属性为null.

看了这个,似乎没有其他人尝试同样的事情,所以有可能在方法之间共享一个值,还是我采取了错误的方法?

提前致谢.

Str*_*ior 5

你采取了错误的做法.

根据定义,单元测试应该是完全独立且确定的.他们不应该相互依赖.

您应该能够将第一个单元测试的重复部分重构为辅助方法,该方法可以由您的其他单元测试调用.这项工作将完成两次,但单元测试应该非常快,因此开销应该非常小.