Java
@DisplayName
@DisplayName ile test adlandırma öğrenirsin.
@DisplayName
@DisplayName, bir test sınıfına veya yöntemine okunabilir bir ad verir. Varsayılan ad yöntem adıdır; bu annotation ile daha anlamlı bir etiket gösterilirsin.
@DisplayName("Sepete ürün ekleme")
@Test
void testAdd() {
// ...
}
IDE ve raporlarda bu ad görünür. Bu, test sonuçlarını okumayı kolaylaştırır; teknik ad yerine iş açısından anlamlı bir metin kullanılır. Emojis ve özel karakterler de desteklenir; ancak profesyonel projelerde sade metin tercih edilir.
@DisplayNameGeneration
Sınıf düzeyinde @DisplayNameGeneration ile tüm test adları için otomatik bir biçim belirlenebilir. Bu, her yönteme tek tek @DisplayName yazmaktan kurtarır.
@DisplayNameGeneration(ReplaceUnderscores.class)
class CartTest {
@Test
void adds_item_to_cart() { }
}
Alt çizgiler boşluğa dönüşür; test raporunda "adds item to cart" görünür. Bu, anlamlı adlar elde etmenin otomatik yoludur. Ekipler, ortak bir biçim kararı verip tutarlılık sağlayabilir.
Uygulama Cart testine @DisplayName ekle
Bir CartTest sınıfı tanımla. List<String> cart alanı tanımla. @DisplayName("Sepete ürün ekler") ve @Test ile işaretli testAdd yöntemi yaz; cart.add("ekmek") çağır ve assertEquals(1, cart.size()) ile doğrula. Bir main metodu ekle, sepete bir öğe ekle ve size() sonucunu yazdır.
Örnek çözümü göster
import org.junit.jupiter.api.*;
import java.util.*;
class CartTest {
List<String> cart = new ArrayList<>();
@DisplayName("Sepete ürün ekler")
@Test
void testAdd() {
cart.add("ekmek");
assertEquals(1, cart.size());
}
public static void main(String[] args) {
CartTest t = new CartTest();
t.cart.add("ekmek");
System.out.println(t.cart.size());
}
}
Kendini test et
-
DisplayName çağrısını tamamla
@____("Kullanıcı oturum açabilmeli")
@Test
void testLogin() {
// ...
}
Cevabı göster
@DisplayName("Kullanıcı oturum açabilmeli")
@Test
void testLogin() {
// ...
}
-
@DisplayName ne işe yarar?
- Test yöntemini çalıştırır
- Testi girdilerle çalıştırır
- Teste okunabilir bir ad verir
- Testten önce kod çalıştırır
Cevabı göster
Teste okunabilir bir ad verir — @DisplayName, teste okunabilir bir ad verir.
-
Annotation'ları görevine eşleştir
- @DisplayName
- Okunabilir ad verir
- @DisplayNameGeneration
- Sınıf için ad biçimi
- @Test
- Test yöntemini işaretler
- @Disabled
- Testi atlatır
Sıradaki ders: Özet - JUnit test