Kara Kutu Testi
- İngilizcesi
- Black-Box Testing
- Okunuşu
- blek boks testing
Günlük kullanımda iki ad da yaygın.
Kısaca
Kara kutu testi, yazılımı içindeki koda bakmadan ya da ona dayanmadan, yalnızca girdileri ve çıktıları üzerinden, yapması gereken şeye göre kontrol eder.
Kara kutu testi (black-box testing) nedir?
Test eden kişi sistemi kapalı bir kutu gibi ele alır: ona girdi verir, çıktıyı gözlemler ve onu şartnameyle ya da gereksinimlerle karşılaştırır. Bir test uzmanı, kodun nasıl yazıldığını hiç bilmeden bir ödeme adımının süresi dolmuş bir kartı reddettiğini, olmayan bir ürün arandığında yardımcı bir mesaj gösterildiğini ya da bir API'nin bilinmeyen bir kimlik için 404 durum kodu döndürdüğünü kontrol edebilir.
Birkaç teknik kara kutu testini sistemli hâle getirir. Denklik bölümleme (equivalence partitioning) aynı davranması gereken girdileri gruplar; böylece tek bir değer bütün grubu temsil edebilir. Sınır değer analizi (boundary value analysis) uçları test eder; 0, 1, en yüksek değer ve en yüksek değerin bir fazlası gibi. Karar tabloları koşul kombinasyonlarını kapsar; durum geçiş testi de bir sistemin taslak, yayımlandı ve arşivlendi gibi durumlar arasında nasıl geçtiğini kontrol eder.
Gerçekleştirime bağlı olmadığı için kara kutu testi her düzeyde çalışır: bir fonksiyonun sözleşmesini sınayan birim testleri, API testleri, uçtan uca testler ve kullanıcı hikâyelerinden yazılan kabul testleri. Test uzmanlarının kodu okuması gerekmez; testler de iç yapı yeniden düzenlendiğinde geçerli kalır.
Sık yapılan bir yanlış, kara kutu testinin tek başına yeterli olduğunu düşünmektir. Kodu görmeden, gereksinimlerin hiç bahsetmediği yolları, örneğin bir hata yönetimi dalını ya da mantığın içinde gizli özel bir durumu kaçırabilir. Onu beyaz kutu teknikleri ve kapsama ölçümleriyle birleştirmek daha eksiksiz bir tablo verir.
Önemli noktalar
- Kara kutu testi girdileri ve çıktıları gereksinimlere göre kontrol eder.
- Test uzmanlarının kodu bilmesi ya da okuması gerekmez.
- Denklik bölümleme ve sınır değer analizi onu yapılandırır.
- Her düzeyde çalışır ve refactoring'den etkilenmez.
- Gereksinimlerin anlatmadığı kod yollarını kaçırabilir.
Sık sorulan sorular
Kara kutu ile beyaz kutu testi arasındaki fark nedir?
Kara kutu testi testleri şartnameden tasarlar ve davranışı dışarıdan kontrol eder. Beyaz kutu testi ise testleri kodun yapısından, dallarını ve yollarını çalıştıracak şekilde tasarlar. Çoğu ekip ikisini birden kullanır.
Sınır değer analizi nedir?
Hatalar en çok sınırlarda görüldüğü için geçerli aralıkların uçlarındaki ve çevresindeki değerleri, yani en düşük, en yüksek ve bunların hemen dışındaki değerleri test eden bir tekniktir.
Uçtan uca test bir kara kutu testi mi?
Genellikle evet. Uçtan uca testler uygulamayı bir kullanıcı gibi kullanır ve kodun içeride nasıl yazıldığına bağlı olmadan görünen sonuçları kontrol eder.
Sık karşılaştırılanlar
İlgili sayfalar
- Beyaz Kutu TestiTest ve Kalite, s. 3Beyaz kutu testi, testleri kodun iç yapısına dair bilgiyle tasarlar; böylece kodun ifadeleri, dalları ve yolları doğrudan çalıştırılıp kontrol edilir.
- Kabul TestiTest ve Kalite, s. 11Kabul testi, yazılımın kullanıcılarla ya da müşterilerle anlaşılan gereksinimleri karşılayıp karşılamadığını kontrol eder; ekip sürüm kararını buna göre verir.
- Uçtan Uca TestTest ve Kalite, s. 35Uçtan uca test, kullanıcı arayüzünden veritabanına ve geri dönüşe kadar tam bir kullanıcı yolculuğunu uygulamanın tamamında çalıştıran otomatik bir testtir.
- Test CaseTest ve Kalite, s. 28Test case, belirli bir davranışın kontrolüdür: başlangıç koşulları, girdi ya da adımlar ve yazılımın doğru davranıp davranmadığını gösteren beklenen sonuç.
- Keşif TestiTest ve Kalite, s. 14Keşif testi, test uzmanının yazılım hakkında öğrenip testleri tasarlayarak aynı anda çalıştırdığı ve bulduklarının yönlendirdiği, uygulamalı bir yaklaşımdır.
- Birim TestiTest ve Kalite, s. 4Birim testi, bir fonksiyonun, metodun ya da sınıfın programın geri kalanından yalıtılmış olarak doğru davrandığını doğrulayan küçük ve otomatik bir kontroldür.
Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin