¿Cuál sería una alternativa a [TearDown] y [SetUp] en MSTest?

244

Cuando uso MSTest Framework, y copio el código que Selenium IDE generó para mí, MSTest no reconoce [TearDown]y [SetUp]. ¿Cuál es la alternativa a esto?

maya
fuente

Respuestas:

276

Usarías [TestCleanup]y [TestInitialize]respectivamente.

Tejs
fuente
77
Configuración = [TestInitialize]; TearDown = [TestCleanup]
ZaneDarken
267

Tenga en cuenta que sus métodos de inicialización / limpieza tienen que usar la firma correcta.

http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.testtools.unittesting.classinitializeattribute.aspx

    [AssemblyInitialize()]
    public static void AssemblyInit(TestContext context) {}

    [ClassInitialize()]
    public static void ClassInit(TestContext context) {}

    [TestInitialize()]
    public void Initialize() {}

    [TestCleanup()]
    public void Cleanup() {}

    [ClassCleanup()]
    public static void ClassCleanup() {}

    [AssemblyCleanup()]
    public static void AssemblyCleanup() {}
Dunken
fuente
99
+1 para AssemblyInitialize y AssemblyCleanup no mencionado aquí stackoverflow.com/a/1873572/864201
Rodolpho Brock
@dunken ¿Sabemos que TestCleanup () se ejecuta incluso si la ejecución del caso de prueba falla en el medio?
kjosh
104

[TestInitialize]y [TestCleanup]en el nivel de prueba individual [ClassInitialize]y [ClassCleanup]en el nivel de clase.

John Gardner
fuente
10

Puedes usar [TestInitialize]para [SetUp]y [TestCleanup]para [TearDown].

Mohsin Awan
fuente