Bir hata, üretime ulaşmak için her zaman kötü koda ihtiyaç duymaz.
Aslında, bazı hatalar sessizce herkesin doğru şeyi yaptığı bir süreçten geçer.
Bir geliştirici kodu yazar.
Kod incelenir.
Testler çalıştırılır.
Pipeline yeşildir.
Her şey yolunda görünür.
Sonra kullanıcı gelir ve sistemi bozar. :)
Peki, hata buraya nasıl gelir?
Çünkü başarılı testler, bir sistemin hatasız olduğu anlamına gelmez.
Bir test yalnızca test etmek için tasarlandığı senaryoyu kontrol eder. Eğer beklenmeyen bir senaryoda bir hata varsa, test doğal olarak bunu yakalayamaz.
Örneğin, bir ödeme sistemini ele alalım.
Testimiz şöyle bir şeyi kontrol edebilir:
Kullanıcı ödemeyi yapar → ödeme başarılı olur → sipariş oluşturulur.
Her şey geçer.
Peki ya gerçek bir kullanıcı ödeme butonuna iki kez basarsa?
İşte burada bir hata hayatta kalabilir.
Bu yüzden iyi bir test mühendisi sadece şunu sormaz:
"Bu çalışıyor mu?"
Daha önemli bir soru vardır:
"Bunu nasıl bozabilirim?"
Çünkü iyi bir test, sistemin doğru çalıştığını kanıtlamaktan çok, nerede hata verebileceğini bulmaya odaklanır.
Belki de bir hatanın en büyük yeteneği hata yapmak değil; kimsenin bakmadığı bir yerde saklanmaktır.
Yorumlar
Yorum yapmak için giriş yapmalısın.