Test Senaryosu ve Neden Metodoloji İhtiyacı

Burak Karaca
Intertech
Published in
2 min readJul 4, 2022

Test koşumundan değil, daha temelden başlayacağız; Test, test senaryosu ve metodolojisi.

Yazılım testi nedir?

En temel ve basit haliyle yazılımın kalitesinin kontrolüdür. Birazcık daha genişletecek olursak; analize uygunluğunun kontrolü de diyebiliriz. Peki buradan yola çıkacak olursak, %100 kapsam analizi yapılabilir mi? Neden olmasın.

Ancak çok detaylı yazılan bir analize rağmen bazı koşullardan dolayı kullanıcı kabul testleri bile %100 yapılamaz. Test ortamlarında gelişen teknoloji ile birlikte belki her cihazı ve datayı sağlayabilirsiniz ama canlı ortamda bunun garantisi var mı? Tabii ki yok. Canlı ortamda ise her cihazı ve datayı kontrol etmeniz mümkün değil. Bu sebeple bile %100 test yoktur diyebiliriz.

O zaman biraz daha derine girelim, test senaryosu nedir?

Yazılımı bilen veya bilmeyen herhangi birinin, baktığı dokümana göre adım adım uygulayarak yazılımın kalitesinin kontrolünü sağlamasına yarayan araç diyebiliriz. Burada en kilit nokta test senaryosunun adım adım ve net olması. Adım adım ve neti biraz açacak olursak; yazılımı hiç bilmeyen birinin, sadece talimatları okuyarak istenen senaryoyu uygulayabilir olması ve tabii ki her adım sonunda beklenenin ne olduğu.

Tabii ki bunlardan ibaret değil; testi yapacak kişinin testi sağlıklı tamamlayabilmesi için hangi ön koşulların sağlanıyor olması gerektiği, nasıl bir test datasına ihtiyaç duyulduğu ki hatta örnek test datası ilave olarak güzel olur ve anlaşılabilir bir isimle birlikte net bir açıklama.

Test ve test senaryosundan genel olarak bahsettik.

Son olarak nedir bu başlıkta bahsedilen metodoloji? Bizim ne gibi işimize yarar?

İkinci sorudan başlayarak geriye dönelim bu sefer. Kullanacağınız araca göre uyarlayacağınız metodoloji tamamen sizin testinizi çok daha kolay planlamanızı, çok daha kolay filtreleme yapmanızı ve daha kısa isimlerle anlaşılabilir bir şablon çıkarmanızı sağlar.

Burada metodolojiden kasıt ise sizin senaryolarınızı gruplamanıza ve isimleri daha kısa bir hale getirmenizdir.

Örneklerle açıklayalım, çoğaltmak kendi elimizde. Burada biraz kendi uyarladığımız metodolojiden bahsediyor olacağım.

  1. Kullandığınız araçta yazılımınızın fonksiyonuna göre klasörlere bölebilirsiniz, bu sayede belirli bir fonksiyona ait geliştirme yapıldığında hızlıca bu senaryolarla planlamanızı yapabilirsiniz.
  2. Senaryo sonucuna göre kodlama yapabilirsiniz, ..01 başarılı senaryolar, ..02 istisna senaryolar derken, ..00 ekran kontrolü (smoke) yapılması diyebilirsiniz. Böylece sadece ekranlar düzgün açılıyor mu kontrolü yapacağınız zaman ..00 ile biten senaryolarınızı alır ve hızlıca planlamanızı yapabilirsiniz.
  3. Bir diğerine işlem kaynağı diyebiliriz. Genel işlemler için 0.. , hesaptan yapılan işlemlere 1.. , karttan yapılan işlemlere 2.. diyebilirsiniz.
  4. Bir diğer isim kısaltması olarak BM (Bireysel Müşteri), KM(Kurumsal Müşteri) gibi kısaltmalar kullanılabilir. Belirli bir kullanıcı tipine ait senaryoları çekerken işinizi kolaylaştıracaktır. İlk dört maddede verdiğim örneğe göre bireysel müşterinin hesaptan yapılan başarılı işlemini BM101 diye özetlemiş oluyoruz.
  5. Son olarak label yapısı. Bir standart haline getirerek label kullanımı yine sizi hızlandıracaktır. Happy Path ve Alternative senaryoları label yoluyla ayırdığınız zaman aradığınıza daha kolay erişebilirsiniz.

Tabii ki metodolojiniz için, herkes için anlaşılabilir bir doküman olmalı. Size zaman kazandıracaktır.

--

--