SORU
13 EYLÜL 2012, PERŞEMBE


Bir nesnenin belirli bir türü olduğunu iddia

Mümkün junit olarak iddia etmek, bir nesne sınıfının bir örneğidir. Çeşitli nedenlerle türünü kontrol etmek istiyorum bu benim testte bir nesne var. Object1 Object2 bir türü veya bir türü mü?

Şu anda var

assertTrue(myObject instanceof Object1);
assertTrue(myObject instanceof Object2);

Bu ise, bunu yapmanın daha etkili bir yolu varsa merak ettim ama çalışıyor.

Örneğin bir şey gibi

assertObjectIsClass(myObject, Object1);

Bunu da yapabilirim

assertEquals(myObject.class, Object1.getClass());

Bazen junit daha etkileyici olabileceğini düşünüyorum. Daha kısa yöntem adları için argurments iki şekilde görebiliyorum ancak. assertEquals gerçekten asssertExpectedEqualsActual olması gerektiğini düşünüyorum(...)

Benim soru gerçekten

Orada bana bir nesne, bir tür test etmek için izin veren belirli bir onaylama yöntemi.

Teşekkürler

CEVAP
13 EYLÜL 2012, PERŞEMBE


assertThat yöntem ve JUnit ile birlikte Matchers kullanabilirsiniz.

JUnit Matchers hakkında biraz açıklar this link bir göz atın.

Örnek:

public class BaseClass {
}

public class SubClass extends BaseClass {
}

Test:

import org.junit.Test;

import static org.hamcrest.CoreMatchers.instanceOf;
import static org.junit.Assert.assertThat;

/**
 * @author maba, 2012-09-13
 */
public class InstanceOfTest {

    @Test
    public void testInstanceOf() {
        SubClass subClass = new SubClass();
        assertThat(subClass, instanceOf(BaseClass.class));
    }
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dion Coulls

    Dion Coulls

    16 AĞUSTOS 2006
  • Easy Learn Tutorial

    Easy Learn T

    10 Kasım 2012
  • GavinMichaelBooth

    GavinMichael

    26 AĞUSTOS 2006