相关疑难解决方法(0)

我何时使用TestFixtureSetUp属性而不是默认构造函数?

NUnit文档没有告诉我何时使用带有a的方法TestFixtureSetup以及何时在构造函数中进行设置.

public class MyTest
{
    private MyClass myClass;

    public MyTest()
    {
        myClass = new MyClass();
    }

    [TestFixtureSetUp]
    public void Init()
    {
        myClass = new MyClass();
    }
}
Run Code Online (Sandbox Code Playgroud)

关于TestFixtureSetup与默认构造函数有任何好/坏的做法,或者没有任何区别?

c# nunit unit-testing

70
推荐指数
5
解决办法
4万
查看次数

TestInitialize与ClassInitialize

在MSTest中TestInitializevs 之间有什么区别ClassInitialize?每个人的优点是什么?

我的印象是TestInitialze应该每次都进行EACH测试吗?那是对的吗?这ClassInitialize将每次运行任何类的新实例?

c# mstest vs-unit-testing-framework

65
推荐指数
1
解决办法
3万
查看次数

What's the difference between using the constructor in VS Testing framework vs. TestInitialize() attribute?

快问,我正在使用Visual Studio的测试框架进行单元测试.只是想知道使用构造函数进行初始化工作与使用[TestInitialize()]属性的方法有什么区别?

unit-testing visual-studio

22
推荐指数
2
解决办法
8107
查看次数

C#中单元测试的生命周期是多少

在Visual Studio中的C#中完整的MSTest单元测试运行中的事件序列是什么(Ctrl + R,A)?

这是我到目前为止的想法:

  • 1 - 运行 [AssemblyInitialize]
  • 2 - 随机运行一个 [ClassInitialize]
  • 3 - 运行课程 [TestInitialize]
  • 4 - [TestMethod]从该类中随机运行a
  • 5 - 运行课程 [TestCleanup]
  • 为类中的每个TestMethod重复3到5
  • 对每个测试类重复2到5
  • 6 - 运行所有类[ClassCleanup]方法
  • 7 - 运行 [AssemblyCleanup]

但我认为VS可能会立即初始化多个类,然后随机运行TestMethods.测试是否应该在整个测试项目或整个测试项目中自治?了解事件的确切顺序应该回答这些问题.

更新:

我做了一些测试,发现它确实是事件发生的顺序,除了#3到5,任何类的任何测试都可以运行.Visual Studio似乎一次顺序运行一个测试.但是,不应该依赖于此,原因在接受的答案中解释.

.net c# unit-testing mstest visual-studio

6
推荐指数
1
解决办法
2614
查看次数