TestNG'de çalıştıracağınız kodda birbirine bağımlı @Test ler varsa öncelik kullanarak çalışacak testin sırasına karar verebilirsiniz.
- TestNG'de herhangi bir öncelik kullanmazsanız alfabetik sıraya göre testleri çalıştırır.
- @Test (priority=2) gibi bir öncelik ifadesi kullanırsanız, öncelik değeri düşük olandan koşturmaya başlar.
- Aynı öncelik değerine sahip iki test varsa, alfabetik olarak sıralamaya koyar ve testi koşturur.
- Koşturacağınız testte hem öncelik değeri olan hem de olmayan testler varsa; önce öncelik değeri olmayan testleri alfabetik sıraya göre daha sonra öncelik değeri düşük olandan başlayarak koşturur. Yine aynı öncelik değeri olan testleri alfabetik sırayla koşturur.
- TestNG'de büyük/küçük harf duyarlılığı olduğu için "priority" 'nin küçük yazılması gerekir yoksa hata verir.
Örnek:
Koşturacağımız testte iki grup olduğunu varsayalım. Testleri hem gruplara ayıralım hem öncelik verelim. TestNG'nin bu testleri çalıştırma sırası aşağıdaki gibidir.
İlk olarak önceliği en küçük olandan çalıştırmaya başlar. Aynı önceliğe sahip testler varsa kodda en üstte hangisi varsa onu çalıştırır. Grup, kodu çalıştırma sırasında herhangi bir öneme sahip değildir.
Koddaki sıra:
@Test (priority = 1, groups = {"bonding"})
public void elementsFind()
@Test (priority = 4, groups = {"bonding","strong_ties"})
public void KeyboardAndMouse() throws InterruptedException
@Test (priority = 5, groups = {"bonding"})
public void Satirici() throws InterruptedException
@Test (priority = 6, groups = {"strong_ties"})
public void DinamikTablo() throws InterruptedException
@Test (priority = 6, groups = {"bonding"})
public void toolTipStatik() throws InterruptedException
@Test (priority = 1, groups = {"bonding"})
public void toolTipJQuery()
XML:
<include name="strong_ties" />
<include name="bonding" />
TestNG'nin çalıştırma sırası:
elementsFind group bonding, priority 1
toolTipJQuery group bonding, priority 1
verifyTitle group bonding, priority 2
KeyboardAndMouse group bonding, strong_ties, priority 4
Satirici group bonding, priority 5
DinamikTablo group strong_ties, priority 6
toolTipStatik group bonding, priority 6
Yorumlar
Yorum Gönder