C# 测试初始化vs分类初始化
MSTest中的C# 测试初始化vs分类初始化,c#,mstest,vs-unit-testing-framework,C#,Mstest,Vs Unit Testing Framework,MSTest中的TestInitialize与ClassInitialize有什么区别?每种方法的优缺点是什么 我的印象是,TestInitialze每次都应该与每个测试一起运行?对吗?每次有任何类的新实例时,ClassInitialize都会运行吗 这两个属性仅适用于它们所属的类(因此也适用于测试) TestInitialize在声明属性的同一类的上声明的每个测试之前运行 ClassInitialize仅在声明属性的类初始化时运行。换言之,它不会适用于所有班级。仅适用于包含ClassIniti
TestInitialize
与ClassInitialize
有什么区别?每种方法的优缺点是什么
我的印象是,
TestInitialze
每次都应该与每个测试一起运行?对吗?每次有任何类的新实例时,ClassInitialize
都会运行吗 这两个属性仅适用于它们所属的类(因此也适用于测试)
TestInitialize
在声明属性的同一类的上声明的每个测试之前运行
ClassInitialize
仅在声明属性的类初始化时运行。换言之,它不会适用于所有班级。仅适用于包含ClassInitialize
方法的类
如果希望在所有测试或类初始化之前运行一次的方法,请使用 ClassInitialize和AssemblyInitialize的用例是什么?我很难获得ClassInitialize的实际用例…一个用例是使用需要很长时间才能运行的初始化方法为DLL运行集成测试。ClassInitialize可用于在批测试开始时执行初始化,ClassCleanup将调用DLL的terminate方法。另一种情况是设置具有大量注入依赖项和模拟设置的对象。我有一些包含100多行的测试类,否则需要在每个测试中使用。@DPH TestInitialize适用于重复代码,只有在运行代码需要很长时间时,才使用ClassInitialize