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

  • incognitotraveler

    incognitotra

    27 Mayıs 2010
  • L- Crysis

    L- Crysis

    30 Aralık 2011
  • MagmaRhino

    MagmaRhino

    16 Temmuz 2011