Saya menggunakan Visual Studio 2010 Beta 2. Saya punya satu [TestClass]
, yang memiliki [TestInitialize]
, [TestCleanup]
dan beberapa [TestMethods]
.
Setiap kali metode pengujian dijalankan, metode inisialisasi dan pembersihan JUGA dijalankan!
Saya mendapat kesan bahwa [TestInitialize]
& [TestCleanup]
hanya boleh dijalankan sekali, per uji coba lokal.
Apakah itu benar? Jika tidak, apa cara yang tepat untuk melakukan ini?
ini adalah perilaku standar untuk suite tes: pengaturan dan teardown sebelum dan sesudah setiap tes. Filsafatnya adalah bahwa tes tidak harus saling bergantung. Jika Anda menginginkan perilaku lain, Anda mungkin harus menggunakan objek statis yang bertahan di antara setiap tes.
sumber
Contoh lengkap diambil dari dokumentasi microsoft :
sumber
Metode yang ditandai dengan atribut [TestInitialize ()] digunakan untuk menyiapkan aspek lingkungan di mana tes unit Anda akan berjalan. Tujuannya adalah untuk menetapkan kondisi yang diketahui untuk menjalankan tes unit Anda. Anda dapat menggunakan metode [TestInitialize ()] untuk menyalin, mengubah, atau membuat file data tertentu yang akan digunakan pengujian Anda.
Buat metode yang ditandai dengan atribut [TestCleanUp {}] untuk mengembalikan lingkungan ke kondisi yang diketahui setelah tes dijalankan. Ini mungkin berarti penghapusan file dalam folder atau kembalinya database ke kondisi yang diketahui. Contohnya adalah mengatur ulang database inventaris ke kondisi awal setelah menguji metode yang digunakan dalam aplikasi entri-pesanan.
Untuk informasi lebih lanjut silakan merujuk: http://msdn.microsoft.com/en-us/library/ms182517%28v=vs.100%29.aspx
sumber