Is it possible to execute code once before all tests run?

前端 未结 3 775
无人共我
无人共我 2020-12-12 21:41

Basically I would like to tell MSTest to execute a bit of code before launching into a series of test runs, essentially what I would like to do is the same thing as sticking

3条回答
  •  囚心锁ツ
    2020-12-12 22:12

    FWIW, you can use the AssemblyInitialize attribute to run code before all unit tests in an assembly executes:

    [TestClass]
    public class SetupAssemblyInitializer
    {
        [AssemblyInitialize]
        public static void AssemblyInit(TestContext context)
        {
            // Initalization code goes here
        }
    }
    

    If you have more than one unit test assembly, I'm not aware of anything that encompasses more than one assembly.

    As far as I'm aware, this is as close as you can get to a Main equivalent.

    Note that the AssemblyInitialize-decorated method must be in a TestClass-decorated class which contains at least one TestMethod-decorated method, otherwise it will not be executed!

提交回复
热议问题