Quelle serait une alternative à [TearDown] et [SetUp] dans MSTest?

244

Lorsque j'utilise MSTest Framework et que je copie le code que Selenium IDE a généré pour moi, MSTest ne reconnaît pas [TearDown]et [SetUp]. Quelle est l'alternative à cela?

Maya
la source

Réponses:

276

Vous utiliseriez [TestCleanup]et [TestInitialize]respectivement.

Tejs
la source
7
Setup = [TestInitialize]; TearDown = [TestCleanup]
ZaneDarken
267

Gardez à l'esprit que vos méthodes Initialize / Cleanup doivent utiliser la bonne signature.

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
la source
9
+1 pour AssemblyInitialize et AssemblyCleanup non mentionnés ici stackoverflow.com/a/1873572/864201
Rodolpho Brock
@dunken Savons-nous que TestCleanup () est exécuté même si l'exécution du scénario de test échoue entre les deux?
kjosh
104

[TestInitialize]et [TestCleanup]au niveau du test individuel, [ClassInitialize]et [ClassCleanup]au niveau de la classe.

John Gardner
la source
10

Vous pouvez utiliser [TestInitialize]pour [SetUp]et [TestCleanup]pour [TearDown].

Mohsin Awan
la source