SORU
25 Ocak 2010, PAZARTESİ


@BeforeClass ve miras - icra emri

Benim birim testleri için bir temel (Eğer 5.10) olan soyut bir temel sınıf var. Bu sınıfta benim testler için tüm çevre, veritabanı eşlemeleri, vb kurma başlatılamadı. Soyut sınıf başlatma yapar @BeforeClass bir açıklama ile bir yöntemi vardır. Sonraki şey, @Test yöntemleri var özel sınıflar ve @BeforeClass yöntem de şu sınıf sunuyorum. Bu yöntemler, belirli bir sınıf ortamı veritabanına bazı kayıtlar koymak başlatma.

Benim sorum @BeforeClass açıklamalı yöntemleri belirli bir düzeni sağlamak istiyorum. Soyut temel sınıfından olanlar uzanan sınıfı olanlar önce idam edilmesi lazım.

Örnek:

abstract class A {
 @BeforeClass
 doInitialization() {...}
}

class B extends A {
 @BeforeClass
 doSpecificInitialization() {...}

 @Test
 doTests() {...}
}

Sipariş bekleniyor:

A.doInitialization
B.doSpecificInitialization
B.doTests

Gerçek sipariş:

B.doSpecificInitialization // <- crashes, as the basic init is missing
(A.doInitialization        // <---not executed
 B.doTests)                // <-/

CEVAP
25 Ocak 2010, PAZARTESİ


düzenleme:Cevap aşağıdaJUnityararlı olabilir, çünkü , ama yine de burada bırakıyorum.

JUnit api göre: "superclasses @BeforeClass yöntemleri bu geçerli dersten önce çalışma olacak."

Bu test, ve benim için iş gibi görünüyor...

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BigDawsTv

    BigDawsTv

    20 HAZİRAN 2012
  • RiverCityGraphix

    RiverCityGra

    6 Ocak 2012
  • SunsetTrance

    SunsetTrance

    20 EYLÜL 2008