Fonksiyonel testler çok önemlidir. Evet, yazmak zaman alıyor, ancak doğru fonksiyonel testleri yazıyorsanız, buna değecektir.
Bir uygulamada otomatik fonksiyonel testler yapmak için birkaç iyi neden vardır.
- Web sitenize yeni bir özellik eklendiğinde, söz konusu yeni özellik için yapılan değişikliklerin sitenizdeki diğer işlevleri bozup bozmadığını hemen bildirirsiniz.
- İş gereksinimlerini karşılamak için uygulamanın nasıl çalıştığına ve birlikte çalıştığına dair belgelenmiş bilgi.
- Bir üçüncü taraf kütüphanesini güncelleme zamanı geldiğinde, güncelleyebilir ve herhangi bir şeyin kopup kopmadığını görmek için fonksiyonel test takımınızı çalıştırabilirsiniz. Her sayfayı kendiniz gözden geçirmek yerine, bir bilgisayarın sizin için yapmasını ve kırılan tüm testlerin bir listesini vermesini sağlayabilirsiniz.
- Yük testi! Sitenize aynı anda isabet eden binlerce eşzamanlı kullanıcıyı simüle edebilir ve sitenizin nerede yavaşladığını ve baskı altında tokalaştığını görebilirsiniz. Bir gece geç saatlerde sitenin çöktüğünü görmeden önce web sitenizin nasıl davrandığını görebilirsiniz.
- Fonksiyonel testlerin manuel olarak yapılması zaman alır. Evet, vakaları yazmak uzun sürüyor, ancak ürünü göndermeden önce tamamlamanız gereken 500 sayfa testli bir ciltleyici ile oturmak zorunda kalsaydınız, otomatik testlerin yapılmasını dilersiniz!
- Test dokümanları güncelliğini yitirir. Yeni bir özellik eklendiğinde, ana test belgesini güncellediğinizden emin olmalısınız. Birisi bazı testleri atlarsa hepiniz aniden "yapılan ve test edilen" sayfalara sürünen hatalar alın. Şu anda böyle bir ortamda çalışıyorum ve sizi temin ederim ki bu bir kabus.
Sonunda, evet bu vakaları yazmak zaman alır, ancak bunları yazmaktan gurur duymalısınız. Bu, kodunuzun çalıştığından ve orada diğer tüm özelliklerle çalıştığından şüphe duyulan bir gölgenin ötesinde kanıtlamanın yoludur. KG size geldiğinde ve bir hata olduğunu söylediğinde, sorunu düzeltir ve ardından sabit olduğunu göstermek ve bir daha asla gerçekleşmediğinden emin olmak için test paketinize eklersiniz.
Bu sizin güvenlik ağınızdır. Birisi içeri girdiğinde ve depolanmış bir proc'u ele geçirdiğinde ve küçük bir değişiklik yaptığında, kodlarıyla çalışacağından, işlemdeki diğer 3 özelliği kırdığını yakalarsınız. Son geceden önceki gece değil, o gece yakalayacaksınız!
Sadece sistem açısından kritik fonksiyonlar için fonksiyonel testler yazmak içindir. Bu size tüm resmi vermez ve hataların gizlenmesine izin verir. Tek yapmanız gereken, sistem açısından kritik olmayan ancak sistem açısından kritik bir işlevle dolaylı olarak etkileşime giren küçük bir özellik eklenmesidir ve bir hata getirme potansiyeline sahipsiniz.