Junit'te test paketi, birden çok sınıftan tüm test olaylarını tek bir yerde toplamamıza ve birlikte çalıştırmamıza olanak tanır.
Paket testini çalıştırmak için, aşağıda belirtilen ek açıklamaları kullanarak bir sınıfa açıklama eklemeniz gerekir:
- @Runwith (Suite.class)
- @SuiteClasses (test1.class, test2.class…) veya
@ Suite.SuiteClasses ({test1.class, test2.class
…})
Yukarıdaki açıklamalarla, paketteki tüm test sınıfları birer birer yürütülmeye başlayacaktır.
Test Paketi ve Test Çalıştırıcısı oluşturma adımları
Adım 1) Basit bir test sınıfı oluşturun (örn. MyFirstClassTest) ve @test ile açıklanmış bir yöntem ekleyin.
Adım 2) Eklemek için başka bir test sınıfı oluşturun (örn. MySecondClassTest) ve @test ile açıklanmış bir yöntem oluşturun.
Adım 3) Bir testSuite oluşturmak için önce sınıfa @RunWith (Suite.class) ve @SuiteClasses (class1.class2) ile açıklama eklemeniz gerekir.
…).Adım 4) Test paketimizi aşağıda belirtildiği gibi çalıştırmak için bir Test Runner sınıfı oluşturun;
Kod Açıklaması:
- Kod Satırı 8: JUnit testimizi çalıştıracak sınıf testinin ana yöntemini bildirmek.
- Kod Satırı 9: Test sınıfı adını parametre olarak alan JunitCore.runclasses kullanarak test durumlarını yürütme (Yukarıdaki örnekte, 3. adımda gösterilen TestSuiteExample.class'ı kullanıyorsunuz).
- Kod Satırı 11: Sonucun for döngüsü kullanılarak işlenmesi ve başarısız sonucun yazdırılması.
- Kod Satırı 13: Başarılı sonucun yazdırılması.
Çıktı: Aşağıda, arıza izi olmadan başarılı testi gösteren çıktı aşağıda verilmiştir:
JUnit Test Suite Örneği
Daha karmaşık bir örnek düşünün
JunitTest.java
JunitTest.java, @RunWith ve @Suite ek açıklamalarıyla açıklanmış basit bir sınıftır . Setteki .classların sayısını aşağıda verildiği gibi parametreler olarak listeleyebilirsiniz:
paket guru99.junit;import org.junit.runner.RunWith;import org.junit.runners.Suite;@RunWith (Suite.class)@ Suite.SuiteClasses ({SuiteTest1.class,SuiteTest2.class,})public class JunitTest {// Bu sınıf boş kalır, yalnızca yukarıdaki ek açıklamalar için tutucu olarak kullanılır}
SuiteTest1.java
SuiteTest1.java , aşağıdaki gibi bir mesajı yazdırmak için bir test yöntemine sahip bir test sınıfıdır. Bu sınıfı yukarıda belirtilen sınıfta süit olarak kullanacaksınız.
paket guru99.junit;statik org.junit.Assert.assertEquals içe aktar;import org.junit.Test;public class SuiteTest1 {public String mesajı = "Saurabh";JUnitMessage junitMessage = yeni JUnitMessage (mesaj);@Test (beklenen = ArithmeticException.class)public void testJUnitMessage () {System.out.println ("Önemsiz Mesaj yazdırılıyor");junitMessage.printMessage ();}@Ölçekpublic void testJUnitHiMessage () {message = "Merhaba!" + mesaj;System.out.println ("Önemsiz Merhaba Mesaj yazdırılıyor");assertEquals (mesaj, junitMessage.printHiMessage ());System.out.println ("Suite Test 2 başarılı" + mesajı);}}
SuiteTest2.java
SuiteTest2.java , aşağıda verildiği gibi bir mesajı yazdırmak için bir test yöntemine sahip olan SuiteTest1.java'ya benzer başka bir test sınıfıdır . Bu sınıfı JunitTest.java'da paket olarak kullanacaksınız .
paket guru99.junit;import org.junit.Assert;import org.junit.Test;public class SuiteTest2 {@Ölçekpublic void createAndSetName () {Dize beklenen = "Y";Dize gerçek = "Y";Assert.assertEquals (beklenen, gerçek);System.out.println ("Suite Test 1 başarılı" + gerçek);}}
Çıktı
Yürüttükten sonra JunitTest sahip bir paketi içeren .java test1.java ve Test2.java , çıkışa altına alacak:
Özet
Bu eğitimde, test koşum takımı ve test takımlarının temellerini bir örnekle ayrıntılı olarak öğrendiniz.
- Test koşum takımı veya otomasyon Test, bir kullanıcının birden çok girişle verileri test etmesine ve yürütmeyi kontrol etmesine olanak tanıyan bir yazılım veya yazılım koleksiyonudur.
- Test koşum takımı, aslında bir test kitaplığı kullanarak testleri yürütme ve bir test raporu oluşturmanın tüm işini yapan bir test çerçevesini etkinleştirir.
- Junit'te test paketi, birçok sınıfın tüm test durumlarını tek bir yerde toplamamıza ve birlikte çalıştırmamıza olanak tanır.