Test Tasarım Teknikleri

Ali KAYA
3 min readDec 10, 2021
  1. Beyaz Kutu Tekniği(White Box)
  • Beyaz kutu denmesinin sebebi testi yapan kişinin kod yapsıını bilerek test yapmasından dolayıdır.
  • Çoğunlukla yazılım geliştiriciler tarafından yapılır.
  • Şeffaf kutu testi olarak da adlandırılır.
  • Yazılımın her yönünü test eder ve test eden kişinin, test ettiği yazılımın eksiksiz tasarımı ile birlikte programlama becerilerine ihtiyacı vardır.
  • Uzun zaman alır.

Beyaz Kutu Test Tekniğinin iki türünden bahsedebiliriz:

a)Komut Testi: Kodların çalıştırılmasıdır. Yazılan fonksiyonların girdi ve çıktılarından elde edilen sonuçlar karşılaştırılır ve beklenen sonucu verip vermediği kontrol edilir.

b)Karar Testi: Testlerin çalıştırıldığı çıktıların sayısının test nesnesindeki karar çıktılarının toplam sayısına bölünmesiyle hesaplanır.

2.Kara Kutu Tekniği(Black Box)

  • Yazılımın iç mekanizması bilinmeden yapılan testlerdir. Kara kutu denmesinin sebebi kod yapısını test uzmanının bilmemesi veya dikkate almamasıdır.
  • Yazılım test uzmanları tarafından gerçekleştirilir.
  • Yazılımın davranış testidir.
  • Deneme yanılma yöntemiyle yapılabilir.
  • Kısa zaman alır.

Kara Kutu Test Tekniğinin beş türünden bahsedebiliriz:

a)Denklik Paylarına Ayırma(Equivalence Partitioning)

Örneğin bir bankanın müşterilerine verdiği kredilerde kredi tutarı değiştikçe ödenen toplam faizin de değiştiği bir uygulamayı test ettiğimizi varsayalım.

10.000–20.000 aralığı için örneğin %1.15

20.001–50.000 aralığı için örneğin %1.12

50.001–100.000 aralığı için örneğin %0.98 faiz uygulandığını varsayalım.

Denklik paylarına ayrılan bu değerler için bütün 3 aralık için geçerli denklik payı senaryosu ve üç aralığın kapsamadığı 10.000 değerinden küçük 1 tane ve 100.000 değerinden büyük 1 tane toplamda 2 geçersiz değer test edilerek 3 geçerli + 2 geçersiz = 5 test yapmamız gerekir.

b)Sınır Değer Analizi(Boundary Value Analysis)

Sınırdaki geçerli ve geçersiz değerler test edilir. Sırf bu değerler test edilerek bile varsa hataların önemli bir kısmı bulunur. Örneğin kredi vadelerinin 36 ve 72 ayla sınırlı tutulduğu bir kredi paketinde bütün senaryoları sınır değerleriyle test etmek için 35,36,37,71,72,73 değerleriyle test koşumu yapılır.

c)Karar Tablosu(Decision Table Testing)

Test edilecek verinin imkan olan tüm senaryolarının bir tablo ile gösterilmesidir. Örneğin müşterilere indirim sağlandığı ve buna ait koşulların en az iki ürün seçmek ve seçili ürünlerden alışveriş yapmak olduğu bir durumu test ettiğimizi düşünelim. Bununla ilgili karar tablosunda bütün kombinasyonların beklenen sonucu yer alır.

d)Durum Geçiş Testi(State Transition Testing)

Durum Geçiş Testi, test edilen sistemin farklı durumlarını test etmek için kullanılan bir tekniktir. Sistemin durumu, koşullara veya olaylara bağlı olarak değişir. Olaylar, senaryo haline gelen durumları tetikler ve bir testçinin bunları test etmesi gerekir.

Bu diyagramı sizce en az kaç senaryo ile test edebiliriz. Durumları incelediğimizde önce kart hazneye yerleştirilir. 1 senaryoda geçerli bir şifre denemesi yapılır ve hesaba erişim verilir. 2.senaryoda ilk şifre denemesinin hatalı ve ikincisinin doğru olmasıyla hesaba erişim verilir. 3.senaryoda ilk iki şifre denemesinin başarısız ve son denemenin başarılı olduğu durumda hesaba erişim verilir. 4.senaryoda ise ilk üç başarısız şifre girişinden sonra sistem kartı yutar. Dolayısıyla en az 4 senaryo ile bu örneği test etmemiz gerekir.

e)Kullanım Senaryosu(Use Case Testing)

Testler, farklı profildeki kullanıcıların yazılımla etkileşimleri modellemek için faydalanılan kullanım senaryolarından elde edilebilir; bu testler, kullanıcı gereksinimlerini ele alır. Kullanım senaryoları, aktörler (kullanıcılar, harici donanım, diğer birim veya sistemler) ve sistemlerle (kullanım senaryosunun uygulandığı birim, sistem veya yazılımla) ilişkilidir. Her kullanım senaryosu, bir sistemin bir veya daha fazla aktör ile işbirliği içinde gerçekleştirebileceği bazı davranışları belirtir.

Vakit ayırdığınız için teşekkür ederim.

Kaynakça;

https://www.istqb.org.

https://www.educba.com

--

--

Ali KAYA

Assistant Software QA at Nesine.com. Quality Assurance, researcher, debater. Love the world, love the animals.