Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
TAEF, testleri yalıtılmış bir işlemde çalıştırmayı destekler. Bu işlemlerin yerini IsolationLevel meta verileri ve komut satırı seçeneğiyle değiştirmek mümkündür. Bu, istenmeyen test bağımlılıklarını algılamak veya sızma testinin etkisini azaltmak için yararlı olabilir.
Aşağıdaki listede IsolationLevel meta verilerinin ve komut satırı seçeneğinin olası değerleri ve anlamları gösterilmektedir.
Hiç kimse
TAEF testlerin hiçbirini izole etmeyecektir.
Modül
TAEF, her test DLL'i için ayrı bir işlem konağı kullanır.
Bu varsayılan değerdir.
Derlemesi
Modülle Aynı
DLL
Modülle Aynı
Sınıfı
TAEF, her test sınıfı için ayrı bir işlem konağı kullanır.
Yöntem
TAEF, her test için ayrı bir işlem konağı kullanır. Test bir yürütme grubu içindeyse, yürütme grubunun tamamı için aynı işlem konağı kullanılır.
Test
Yöntemle Aynı
Kullanılan IsolationLevel meta veri değeri, test düzeyine en yakın şekilde belirtilen meta verilerdir. Komut satırı IsolationLevel seçeneği de ayarlanırsa, kullanılan değer en çok yalıtım sağlayan değerdir.
BEGIN_MODULE()
MODULE_PROPERTY(L"IsolationLevel", L"Class")
END_MODULE()
class MyTestClass1
{
TEST_CLASS(MyTestClass1);
BEGIN_TEST_METHOD(MyTest1)
TEST_METHOD_PROPERTY(L"IsolationLevel", L"Method")
END_TEST_METHOD()
TEST_METHOD(MyTest2);
TEST_METHOD(MyTest3);
};
class MyTestClass2
{
TEST_CLASS(MyTestClass2);
TEST_METHOD(MyTest1);
TEST_METHOD(MyTest2);
};
Yukarıdaki örnekte, üç farklı işlem ana bilgisayarı kullanılır: biri MyTestClass1::MyTest1 için, biri MyTestClass1'deki diğer iki yöntem için ve diğeri myTestClass2 için. Kullanıcı te.exekomut satırına /IsolationLevel:Method ekleseydi, beş farklı işlem ana bilgisayar kullanılırdı: her test için bir tane.
Bir modül, sınıf veya test meta veri genişletilmiş veya veri temelliyse ve yalıtılacaksa, her meta veri ve/veya veri genişletmenin yalıtılmış olduğunu unutmayın. Bu, testi bir yürütme grubunun üyesi yaparak test düzeyinde önlenebilir.
class MyTestClass3 :
{
BEGIN_TEST_CLASS(MyTestClass3)
TEST_CLASS_PROPERTY(L"Data:MyParameter1", L"{1, 2, 3}")
TEST_CLASS_PROPERTY(L"IsolationLevel", L"Class")
END_TEST_CLASS()
BEGIN_TEST_METHOD(MyTest1)
TEST_METHOD_PROPERTY(L"Data:MyParameter2", L"{1, 2, 3}")
TEST_METHOD_PROPERTY(L"IsolationLevel", L"Method")
TEST_METHOD_PROPERTY(L"ExecutionGroup", L"MyExecutionGroup")
END_TEST_METHOD()
TEST_METHOD(MyTest2);
TEST_METHOD(MyTest3);
};
Bu örnekte altı farklı işlem ana bilgisayar kullanılmıştır. MyParameter1'in üç değerinin her biri yalıtılır ve MyTest1, MyTest2 ve MyTest3'ten yalıtılır. MyParameter2'nin üç değeri aynı yürütme grubunda olduklarından yalıtılmaz.