Java'da JUnit Test Vakaları: Basit JUnit 5.7.1 Hepsi Bir Arada Ayrıntılarıyla Merhaba Dünya Eğitimi

Yayınlanan: 2019-10-30
java-junit-örnek

JUnit nedir?

JUnit, tekrarlanabilir testler yazmak ve çalıştırmak için basit, güçlü, açık kaynaklı bir çerçevedir. JUnit test çantalarını seviyorum. Java Projesi geliştirmem sırasında, kod kapsamı için JUnit'i yoğun bir şekilde kullanıyorum. Birim test çerçeveleri için xUnit mimarisinin bir örneğidir.

JUnit özellikleri şunları içerir:

  1. Beklenen sonuçları test etmek için iddialar
  2. Ortak test verilerini paylaşmak için test fikstürleri
  3. Koşu testleri için test koşucuları

Bu derste 1. ve 3. noktaları ele alacağım. Projenizde aşağıdaki maven bağımlılıklarına ihtiyacınız var.

Kod yazmaya başlayalım.

Aşama 1

CrunchifyJunitTest projesini oluşturun ve com.crunchify.junit paketini belirtin. İşte hızlı başvuru için bir Paket yapısı.

Crunchify JUnit Projesi Eclipse Structure

Adım 2

CrunchifyJunitTest => Yeni Sınıf => CrunchifyJunitTest.java sağ tıklayın

Aşama 3

Eclipse, @Test org.junit.Test bağımlılığını önerir ve otomatik olarak ekler.

Eclipse Testi Maven Bağımlılığı

4. Adım

JUnit testinizi test etmek için

  • Sınıfa sağ tıklayın
  • Farklı Çalıştır'a tıklayın
  • JUnit Test tıklayın

Bunun gibi bir şey görmelisin.

JUnit Testi başarılı

Adım 5

Yöntem beklenen değer paramını 30 => 300 ve Hello World => Hello -- World değiştirmeyi deneyin ve tekrar test edin.

JUnit Test hatası - Crunchify İpuçları

Adım-6

Şimdi aynı test via other java çalıştıralım. CrunchifyRunnerJUnit.java oluşturun

Adım-7

CrunchifyRunnerJUnit.java Java Application olarak çalıştırın.

Adım-8

1st code olması durumunda (beklenen doğru parametre), şöyle bir çıktı görmelisiniz:

Adım-9

2nd code olması durumunda (yanlış beklenen param), şöyle bir şey görmelisiniz:

Ve hepiniz hazırsınız. Bu kodu çalıştırırken herhangi bir sorun görürseniz bana bildirin.

Crunchify'dan JUnit Eğitimi

JUnit test çantasında Mevcut Açıklama:

Dipnot

Tanım

@Test genel geçersiz yöntem() @Test ek açıklaması, bir yöntemin bir test yöntemi olduğunu tanımlar.
@Genel geçersiz yöntemden önce() Her testten önce yöntemi uygulayacaktır. Bu yöntem, test ortamını hazırlayabilir (örneğin, girdi verilerini oku, sınıfı başlat).
@Genel geçersiz yöntemden sonra() Her testten sonra yöntemi uygulayacaktır. Bu yöntem, test ortamını temizleyebilir (örneğin, geçici verileri silebilir, varsayılanları geri yükleyebilir).
@BeforeClass genel geçersiz yöntem() Tüm testlerin başlamasından önce yöntemi bir kez uygulayacaktır. Bu, örneğin bir veritabanına bağlanmak için yoğun zaman gerektiren faaliyetler gerçekleştirmek için kullanılabilir.
@AfterClass genel geçersiz yöntem() Tüm testler bittikten sonra yöntemi bir kez uygulayacaktır. Bu, örneğin bir veritabanından bağlantıyı kesmek gibi temizleme faaliyetlerini gerçekleştirmek için kullanılabilir.
@Görmezden gelmek Test yöntemini görmezden gelir. Bu, temel alınan kod değiştirildiğinde ve test senaryosu henüz uyarlanmadığında kullanışlıdır. Veya bu testin yürütme süresi dahil edilemeyecek kadar uzunsa.
@Test (beklenen = İstisna.sınıf) Yöntem, adlandırılmış özel durumu atmazsa başarısız olur.
@Test(zaman aşımı=100) Yöntem 100 milisaniyeden uzun sürerse başarısız olur.

Mevcut Onay Test Yöntemleri:

İfade

Tanım

başarısız(Dize) Yöntemin başarısız olmasına izin verin. Kodun belirli bir bölümüne ulaşılıp ulaşılmadığını kontrol etmek için kullanılabilir. Veya test kodu uygulanmadan önce testin başarısız olması.
assertTrue(doğru) / assertTrue(yanlış) Her zaman doğru/yanlış olacaktır. Test henüz uygulanmadıysa, bir test sonucunu önceden tanımlamak için kullanılabilir.
assertTrue([mesaj], boole koşulu) Boole koşulunun doğru olup olmadığını kontrol eder.
assertsEquals([String iletisi], beklenen, gerçek) İki değerin aynı olduğunu test eder. Not: diziler için dizilerin içeriği değil, referans kontrol edilir.
assertsEquals([String iletisi], beklenen, gerçek, tolerans) Float veya double değerlerin eşleştiğini test edin. Tolerans, aynı olması gereken ondalık basamak sayısıdır.
assertNull([mesaj], nesne) Nesnenin boş olup olmadığını kontrol eder.
assertNotNull([mesaj], nesne) Nesnenin boş olmadığını kontrol eder.
assertSame([String], beklenen, gerçek) Her iki değişkenin de aynı nesneye başvurduğunu kontrol eder.
assertNotSame([String], beklenen, gerçek) Her iki değişkenin de farklı nesnelere başvurduğunu kontrol eder.