SORU
6 Temmuz 2009, PAZARTESİ


Kullanarak soyut sınıflar test için Mockito

Soyut bir sınıf test etmek istiyorum. Tabii, sınıftan devralan 3* *edebilirim.

Bu alaycı bir çerçeve (Mockito kullanıyorum) kullanmak yerine el işçiliği taklit edebilir miyim? Nasıl?

CEVAP
30 Kasım 2010, Salı


Oluşturmadan soyut sınıflar test aşağıdaki öneri hadi bir "gerçek" alt - Sahtealt sınıf.

Mockito.mock(My.class, Mockito.CALLS_REAL_METHODS), Daha sonra çağrılan tüm soyut yöntemler alay kullanın.

Örnek:

public abstract class My {
  public Result methodUnderTest() { ... }
  protected abstract void methodIDontCareAbout();
}

public class MyTest {
    @Test
    public void shouldFailOnNullIdentifiers() {
        My my = Mockito.mock(My.class, Mockito.CALLS_REAL_METHODS);
        Assert.assertSomething(my.methodUnderTest());
    }
}

Not: bu çözüm beaty değilvarsoyut yöntemler uygulamak, asla çağrılan oldukları sürece.

IMHO, bu bir casus soyut sınıf örneklenebilir bir alt sınıf oluşturmak zorunda anlamına gelir bir örneği gerektirir beri bir casus kullanarak daha derli toplu.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Blendtec

    Blendtec

    30 EKİM 2006
  • Myron and Nejusha dance

    Myron and Ne

    2 AĞUSTOS 2012
  • TechShowsYou

    TechShowsYou

    3 Mart 2011