Apa yang akan menjadi alternatif untuk [TearDown] dan [SetUp] di MSTest?

244

Ketika saya menggunakan MSTest Framework, dan menyalin kode yang dihasilkan Selenium IDE untuk saya, MSTest tidak mengenali [TearDown]dan [SetUp]. Apa alternatifnya?

Maya
sumber

Jawaban:

276

Anda akan menggunakan [TestCleanup]dan [TestInitialize]masing - masing.

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

Ingatlah bahwa metode Inisialisasi / Pembersihan Anda harus menggunakan tanda tangan yang tepat.

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
sumber
9
+1 untuk AssemblyInitialize dan AssemblyCleanup tidak disebutkan di sini stackoverflow.com/a/1873572/864201
Rodolpho Brock
@dunken Apakah kita tahu TestCleanup () dieksekusi bahkan eksekusi test case gagal di antaranya?
kjosh
104

[TestInitialize]dan [TestCleanup]di tingkat tes individu, [ClassInitialize]dan [ClassCleanup]di tingkat kelas.

John Gardner
sumber
10

Anda dapat menggunakan [TestInitialize]untuk [SetUp]dan [TestCleanup]untuk [TearDown].

Mohsin Awan
sumber