SORU
11 Aralık 2008, PERŞEMBE


JUnit testleri dinamik numarası ile test

Projemizde örneğin, bir dizindeki her dosya almak JUnit çeşitli testler var ve bir test yapalım. I TestCase testEveryFileInDirectory bir yöntemi uygulamak eğer bu başarısız ya da başarılı olabilir bu sadece bir test olarak gösterir. Ama her dosya sonuçları ile ilgileniyorum. Nasıl her dosya gösterir gibiTestCase / TestSuite bir Eclipse grafik TestRunner ayrı bir test örneğin yazabilir miyim? (Her dosya için kesin bir test yöntemi kodlama bir seçenek değil.)

Ayrıca soru ParameterizedTest with a name in Eclipse Testrunner karşılaştırın.

CEVAP
11 Aralık 2008, PERŞEMBE


Bir göz atınParametreli TestlerJUnit 4.

Aslında bunu birkaç gün önce yaptım. Açıklamaya çalışacağım ...

Sadece bir giriş dosyası test ilk test sınıf normalde, senin gibi oluşturmak. İle sınıf süsleyin:

@RunWith(Parameterized.class)

Her test çağrısı değiştirecek giriş alan bir yapıcı (bu durumda dosyanın kendisi olabilir) kurmak

Sonra diziler Collection Bir döndüren statik bir yöntem oluşturmak. Koleksiyonundaki her bir dizi sınıf için giriş bağımsız değişkenleri içeren yapıcı bir dosya gibi. Bu yöntem ile süsleyin:

@Parameters

İşte örnek bir sınıf.

@RunWith(Parameterized.class)
public class ParameterizedTest {

    private File file;

    public ParameterizedTest(File file) {
        this.file = file;
    }

    @Test
    public void test1() throws Exception {  }

    @Test
    public void test2() throws Exception {  }

    @Parameters
    public static Collection<Object[]> data() {
        // load the files as you want
        Object[] fileArg1 = new Object[] { new File("path1") };
        Object[] fileArg2 = new Object[] { new File("path2") };

        Collection<Object[]> data = new ArrayList<Object[]>();
        data.add(fileArg1);
        data.add(fileArg2);
        return data;
    }
}

Ayrıca bu example kontrol edin

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bad Lip Reading

    Bad Lip Read

    22 Mart 2011
  • jkimisyellow...ish

    jkimisyellow

    8 Temmuz 2009
  • Thom Hall

    Thom Hall

    24 Kasım 2006