Yeni Başlayanlar için jMock Eğitimi

yeni başlayanlar için jmock öğreticisi
İçindekiler

Test Projesi ile yeni başlayanlar için jMock Eğitimi

jMock nedir?

jMock, sahte nesnelerle test odaklı Java kodu geliştirme oluşturmaya yardımcı olan bir kütüphanedir. jMock başka bir sınıfa bağlı olan sınıfı bağımsız olarak test edebiliriz.

Bir sınıfın diğer sınıfa bağımlı olması durumunda, bağımlı sınıfın bir modelini oluşturabileceğimizi ve bağımlı sınıfı test etmek için başlangıç özelliklerini ayarlayabileceğimizi varsayalım.

Imock Eğitimi

jMock Öğretici Örneği:

Not: Bu Test Projesi için Eclipse platformunu kullanıyoruz. Eclipse'i şu adresten indirebilirsiniz: Burada.

Emin olmak Java SE Çalışma Zamanı Ortamı Eclipse yükleyicisinin kurulumu başlatması için zaten yüklü.

Java'da Test projesi adında bir Test projesi oluşturun. Sınıf yoluna aşağıdaki kavanozları ekleyin:

Jmock EğitimiPin

  • jmock-2.5.1.jar
  • hamcrest-core-1.1.jar
  • hamcrest-kütüphane-1.1.jar
  • JUnit-4.5.jar

Yeni Başlayanlar İçin Jmock EğitimiPin

ITestInterface adında bir arayüz oluşturun. Bu arayüze aşağıdaki kodu koyun:

paket testi;

genel arayüz ITestInterface

{

genel int testi();

}

Jmock Nedir?Pin

TestClass1'i oluşturun. Aşağıdaki kodu bu sınıfa koyun

paket testi;

ortak sınıf TestClass1, ITestInterface'i uygular

{

genel int testi()

{

3'ü döndür;

}

}

Jmock ÖrneğiPin

TestClass2'yi oluşturun. Aşağıdaki kodu bu sınıfa koyun





paket testi;

genel sınıf TestClass2

{

ITestArayüz testiArayüz;

genel TestClass2()

{

this.testInterface=testInterface;

}

public int testMock()

{

int sonuç=testInterface.test();

sonuç döndür;

}

}

Jmock Eğitimi PdfPin

TestClass3'ü oluşturun. Aşağıdaki kodu bu sınıfa koyun

paket testi;

junit.framework.Assert'ı içe aktar;

org.jmock.Mockery'yi içe aktar;

org.junit.Test'i içe aktar;

genel sınıf TestClass3

{

@Ölçek

genel geçersiz testJmock()

{

org.jmock.Mockery TestInterfaceMock= new Mockery();

final ITestInterface testInterface=TestInterfaceMock.mock(ITestInterface.class);

TestInterfaceMock.checking(new org.jmock.Expectations()

{{

oneOf(testInterface).test();

will(returnValue((3)));

}});

int j=testInterface.test();

System.out.println(j);

Assert.assertEquals(j, 3);

}

}

Yeni Başlayanlar İçin JmockPin

Yukarıdaki örnekte olduğu gibi TestClass1'in ITestInterface arayüzünü uyguladığı açıktır. Burada TestClass2'nin TestClass1'e bağımlı olduğunu gözlemlersek. Yani onu birim test edilebilir hale getirmek için TestClass2'de TestClass1'den yeni bir şey yapmıyoruz. Sahte nesne kullanıyoruz.

TestClass3'te ITestInterface'in Mock nesnesini yapıyoruz. TestClass2'nin birim testi sırasında çağrıldığında bu nesnenin 3 döndürmesi beklentisini ayarlıyoruz. Örneğin TestClass3'te testInterface.test() çağrısını yaptığımızda çağrı TestClass2'ye gider. TestClass2'de testInterface.test()'i çağırdığımızda değer sahte nesne tarafından döndürülür. Bu şekilde TestClass2'yi bağımsız olarak test ediyoruz.

Yukarıdaki örneği test etmek için TestClass3'e sağ tıklayın ve Junit testi olarak çalıştır'ı seçin.


Junit TestiPin
Junit Testi

Aşağıdaki ekranı gösterecektir:

Junit Test ÇalıştırmasıPin

Test senaryosu başarıyla yürütüldü!

Picture of Anson Antony
Anson Antony
Anson katkıda bulunan bir yazar ve kurucudur. www.askeygeek.com. Yeni bir şeyler öğrenmek her zaman onun tutkusu olmuştur, ASKEYGEEK.com teknoloji ve iş tutkusunun bir sonucudur. İş Süreci Dış Kaynak Kullanımı, Finans ve Muhasebe, Bilgi Teknolojisi, Operasyonel Mükemmellik ve İş Zekası alanlarında on yıllık çok yönlü bir deneyime sahiptir. Görev süresi boyunca Genpact, Hewlett Packard, M*Modal ve Capgemini gibi kuruluşlarda çeşitli rol ve sorumluluklarda çalıştı. İş ve teknoloji dışında, birlikte saatlerce Sinema ve Film Yapımcısı izleyerek ve öğrenen bir film tutkunu!

5 yanıt

Tanuja için bir yanıt yazın Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Tebrikler!
Başardın,
Kapatmayın!

Yukarı Çık 60.000 Ücretsiz UberTTS Karakter Kredisi!!!

Bu açılır pencere gösterilmeyecek size kalmış Tekrar!!!

UberTTS
Share to...