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

  • ColdfusTion

    ColdfusTion

    3 Aralık 2007
  • FRED

    FRED

    1 EKİM 2005
  • Ordetta Price

    Ordetta Pric

    12 EYLÜL 2011