State Transition Testing (Durum Geçişi Testleri), bir yazılım uygulamasının farklı durumlar arasındaki geçişleri test etmek için kullanılan bir test tasarlama tekniğidir. Bu teknik, özellikle durum tabanlı sistemlerde ve sistemler arası etkileşimlerde yaygın olarak kullanılır. Bir sistem belirli durumlar arasında geçişler yapabilir ve bu durumlar genellikle belirli bir durumda sistem davranışının nasıl olması gerektiğini tanımlar. Yani State Transition Testing, bu geçişleri test ederek ve bu durumların doğru bir şekilde ele alınıp ele alınmadığını kontrol ederek sistemin istikrarını ve doğruluğunu değerlendirir.
Resim-1
Bu test tekniği, bir durum makinesi (state machine) modeli kullanır. Ve belirli durumlar arasındaki geçişleri görselleştirmek için durum diyagramları ve tablolar gibi araçları içerir. Buna ek olarak test durumları, belirli durumlar arasındaki geçişleri kapsayacak şekilde belirlenir. Bu geçişlerin beklenen davranışları test edilir. Ve genellikle State Transition Testing, özellikle kullanıcı arabirimleri, otomasyon sistemleri, kontrol sistemleri ve benzeri durum tabanlı sistemlerin test edilmesi için etkili bir seçenek olarak kabul edilir. Bu test tekniği, sistemin belirli durumlar altında nasıl tepki vereceğini anlamak ve bu geçişlerde olası hataları tespit etmek açısından önemli bir rol oynar. Fakat Decision Table Testing ile karıştırılmamalıdır.
Bir kaç basit örnekle durumu inceleyelim;
Örnek1. ATM koşulları söyledir:
Kart Takıldıktan sonra sistem Durum 2’ye geçiş yapar: “Pin Bekleyin.”
Pin Girişi üzerine sistem Durum 3’e geçer: “1. Deneme.”
Herhangi bir deneme sırasında doğru Pin Girişi yapıldığında sistem Durum 6’ya geçiş yapar: “Hesaba Erişim.”
1. deneme sırasında hatalı Pin Girişi durumunda sistem Durum 4’e geçer: “2. Deneme.”
2. deneme sırasında hatalı Pin Girişi durumunda sistem Durum 5’e geçer: “3. Deneme.”
3. deneme sırasında yanlış Pin Girişi durumunda sistem Durum 7. “Eat Card”a geçer ve ardından sistem Başlangıç Durumuna geri döner.
Cevap:

Örnek2. Bir otel rezervasyonu sistemi şöyledir. Müşteri oda isteği yaptığında uygun oda varsa ve müşteri kendi isteği ile rezervasyonu iptal etmediyse, sistem rezervasyonu tamamlar. Ve arşive kaldırır. Uygun oda olmaması durumunda müşteriyi bekleme listesine alır. Ve yine müşteri kendi isteği ile rezervasyonu iptal etmediyse ve uygun oda varsa, sistem rezervasyonu onaylar.
Cevap:
Resim-3
Bu konuyla ilgili sorularınızı alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.
Referanslar
Resim-1 https://reqtest.com/en/knowledgebase/what-is-state-transition-testing/
Resim-2 https://www.programsbuzz.com/article/state-transition-testing
Resim-3 https://experttesters.com/2013/05/08/state-transition-testing/
TAGs: black box, state transition testing, durum geçiş testi, software testing, software quality, testing