Unit Test, bir yazılım projesinin ayrı birimlerinin ve ya bileşenlerinin test edildiği bir tür yazılım testidir. Amaç, kodların her biriminin beklendiği gibi çalıştığını doğrulamaktır. Unit Test, geliştiriciler tarafından bir uygulamanın geliştirme aşaması sırasında yapılır. Unit Test, kodun bir bölümünü ayırır ve doğruluğunu onaylar. Bir birim, bireysel bir işlev, method, modül ve ya nesne olabilir.
SDLC, STLC, V Modelinde Unit Test, entegrasyon testinden önce yapılan ilk test seviyesidir. Unit Test, genellikle geliştirici tarafından gerçekleştirilen bir White Box test tekniğidir. Her ne kadar pratik bir dünyada, zaman sıkıntısı ve ya geliştiricilerin testlere isteksizliği nedeniyle çoğu zaman atlanıyor olsa da Unit Test yazılım süreçlerinde son derece gereklidir.
Ayrıca şu açıdan da önemlidir; geliştirme evresinde uygun birim testi yapılırsa, sonunda zamandan tasarruf edilir.
Unit Test’in Faydaları
Yeni geliştirilen özelliklerdeki hataları azaltır ve ya mevcut işlevselliği değiştirirken hataları azaltır.
Hatalar çok erken aşamada yakalandığından test maliyetini düşürür.
Tasarımı iyileştirir ve kodun daha iyi yeniden düzenlenmesini(Refactoring) sağlar.
Unit Testler, build ile entegre edildiğinde build kalitesini de verir.
Debug proseslerini kolaylaştırır.
Unit Test Nasıl Yazılır?
Gelin Java’da JUnit Framework’u kullanarak nasıl yazabileceğimize bakalım. Unit Test’i en basit haliyle anlamak için şöyle bir class yazalım:
public class MyUnit { public String combine(String one, String two){ return one + two; } }
1
2
3
4
5
6
public class MyUnit {
public String combine(String one, String two){
return one + two;
}
}
Şimdi bu class’ın bir de Test class’ını oluşturalım. Test class’ına @Test anatasyonunu ekleyelim.
import org.junit.Test; import static org.junit.Assert.*; public class MyUnitTest { @Test public void testCombine() { MyUnit myUnit = new MyUnit(); String result = myUnit.combine("burcu", "altinok"); assertEquals("burcualtinok", result); } }
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import org.junit.Test;
import static org.junit.Assert.*;
public class MyUnitTest {
@Test
public void testCombine() {
MyUnit myUnit = new MyUnit();
String result = myUnit.combine("burcu", "altinok");
assertEquals("burcualtinok", result);
}
}
Burada test eden method, assertEquals() methodudur. Bu method, çağrılan methodun (combine()) çıktısını beklenen çıktı ile karşılaştırır. Başka bir deyişle, “burcualtinok” (beklenen çıktı), değişken sonucunda tutulan combine() methodu tarafından döndürülen değerle karşılaştırır.
İki değer eşitse hiçbir şey olmaz. assertEquals() methodu normal olarak döner. İki değer eşit değilse, bir exception atılır ve test methodu burada yürütmeyi durdurur. assertEquals() methodu, normalde org.junit.Assert sınıfında bulunan, statik olarak import edilen bir methoddur. MyUnitTest’in en üstünde bu sınıfın statik olarak import edilmesine dikkat edin. Methodun statik import’unu kullanmak, Assert.assertEquals() yazmaktan daha kısadır.
Bir birim test class’ında istediğiniz kadar test methodunuz olabilir. Test koşucuları hepsini bulacak ve her birini uygulayacaktır.
Unit Test Nedir? Nasıl Yazılır? was last modified: Eylül 18th, 2021 by Burcu
18 Eylül 2021 0 comment
1	Facebook Twitter Google + Pinterest
Son Yazılar
Unit Test Nedir? Nasıl Yazılır?
Bir Bilgisayar Mühendisi Gözünden Bilgisayar Mühendisliği
Kubernetes Nedir?
Kategoriler
Genel (18)
Gezgin Rehberi (7)
Java (12)
Mobil (6)
Web Teknolojileri (14)
Yazılım Etkinlikleri (3)
Arşivler
Eylül 2021
Temmuz 2021
Haziran 2021
Mayıs 2021
Şubat 2021
Ekim 2020
Eylül 2020
Temmuz 2020
Nisan 2020
Mart 2020
Şubat 2020
Ocak 2020
Ekim 2019
Temmuz 2019
Şubat 2019
Aralık 2018
Kasım 2018
Ağustos 2018
Temmuz 2018
Nisan 2018
Mart 2018
Şubat 2018
Ocak 2018
Aralık 2017
Ekim 2017
Eylül 2017
Ağustos 2017
Temmuz 2017
Haziran 2017
Son Yorumlar
Bilgisayar Mühendisliği Nedir? Ne İş Yapar? için Bir Bilgisayar Mühendisi Gözünden Bilgisayar Mühendisliği