2. PROJE ÇERÇEVESİ
2
Who am I?
▪ I am Onur Başkırt
▪ Head of SW Testing at
▪ Co-owner of
▪ Formerly: Teknosa, Ericsson, Huawei, STMicroelectronics, BAU & UCSC
3. PROJE ÇERÇEVESİ
3
Genel Bakış
Kullanıcı Kabul Testi Nedir?
User Story Testing (Kullanıcı Hikayesi Testi)
Use Case Testing (Kullanılabilr Durum Testi)
Checklist Based Testing (Liste Bazlı Test)
Exploratory Testing (Keşif Testi)
Experienced Based Testing (Tecrübeye Dayalı Test)
User Journey Test (Kullanıcı Yol Haritası Testi)
Risk-Based Testing (Risk Bazlı Test Tekniği)
5. PROJE ÇERÇEVESİ
5
Kullanıcı Kabul Testi / User Acceptance Testing Nedir?
Giriş Kriterleri
● Kod Yazıldı
● Kod Gözden Geçirildi
● Birim Testleri Yapıldı
● Birim Testlerinde Tespit Edilen Hatalar Düzeltildi
● Testler Koşturuldu
● Tespit Edilen Yüksek ve Orta Öncelik Seviyesindeki
Tüm Hatalar Çözümlendi
● UAT’de Kullanılacak Test Verileri Hazırlandı
Çıkış Kriterleri
● Tüm UAT Test Senaryoları Koşuldu
● Tüm Kabul Kriterleri Kapsandı
● Hedef Kalite Seviyesi Yakalandı (>=%90), (Passed
Test Cases / Passed + Failed Test Cases)
● Tespit Edilen Defect’ler Çözümlendi (Priority >=
Major)
6. PROJE ÇERÇEVESİ
6
Kullanıcı Hikayesi Testi / User Story Testing
User Story
Tanım
İhtiyaç
İhtiyacın
Nedeni
Talep Eden
Bitiş Kriterleri (D.O.D)
Tamamlanma
Kriterleri
Kabul Kriterleri
7. PROJE ÇERÇEVESİ
7
Kullanıcı Hikayesi Testi / User Story Testing
Test Giriş Kriterleri
● NETLİK
● İHTİYAÇ
● RİSKLER
● ETKİ ANALİZİ
● KABUL KRİTERLERİ
● FONKSİYONEL OLMAYAN GEREKSİNİMLER
● ENTEGRASYONLAR
● KOD YAZIMI
● STATİK KOD ANALİZİ
● UNIT TESTLER
● KOD GÖZDEN GEÇİRME
● TEST SENARYOLARI
● TEST SENARYOLARININ GÖZDEN GEÇİRİLMESİ
● DESK CHECK (GELİŞTİRİCİ İLE BİRLİKTE TEST YAPMA)
● TEST ORTAMI
● TEST DATASI
● VERİTABANI DEĞİŞİKLİKLERİ
● KONFİGÜRASYONEL DEĞİŞİKLİKLER
● ÖNKOŞULLAR
Test Çıkış Kriterleri
● Tüm Test Senaryoları Koşuldu Tüm Kabul Kriterleri Test Edildi
● Fonksiyonel ve Fonksiyonel olmayan ihtiyaçların karşılandığı kontrol edildi.
● Hedef Kalite Seviyesi Yakalandı (>=%90),
(Passed Test Cases / Passed + Failed Test Cases)
● Tespit Edilen Defect’ler Çözümlendi (Priority >= Medium)
8. PROJE ÇERÇEVESİ
8
Kullanıcı Hikayesi Testi / User Story Testing
Örnek Kullanıcı Hikayesi:
Ürün yöneticisi olarak [Talep Eden], Kariyer.net hoş geldin kampanyasının daha fazla
duyurulması için [İhtiyaç Nedeni], Kariyer.net ana sayfasının üst banner bölümüne hoş geldin
kampanyasının reklam banner’ının eklenmesini istiyorum. [İhtiyaç].
Riskler (Risks) (Sorumlu: Tüm Ekip)
● Anasayfa yüklenme hızında yavaşlama olabilir.
● Banner animasyonlarında doğacak bir hata ya da banner’ın lokasyon olarak kayması sitenin
görünümünü olumsuz etkileyecektir.
● Cookie’lerin sürekli silinmesi Banner’ın kullanıcı tarafında sürekli görünmesine neden
olabilir.
● Banner’ı kapat ikonunun fonksiyonu sürekli başarılı bir şekilde çalışması kritiktir.
Etki Analizi (Impact Analysis): (Sorumlu: Yazılım Geliştirme)
Admin panelinde banner yükleme fonksiyonu etkilenebilir.
9. PROJE ÇERÇEVESİ
9
Kullanıcı Hikayesi Testi / User Story Testing
Bitiş Kriteleri (Definition of Done): (Sorumlu: Product Owner)
Tamamlanma Kriterleri (Completion Criteria)
● Kod Yazıldı (Code Writing Done)
● Kod Gözden Geçirildi (Code Review Done)
● Birim Testleri Yapıldı (Unit Tetsing Done)
● Kullanıcı Hikayesi Test Tamamlandı (UAT Done)
● Dokümantasyonlar Tamamlandı (Documentation Done)
Kabul Kriterleri (Acceptance Criteria)
● Kariyer.net anasayfası açıldığında üst banner’da hoş geldin banner’ı 8 saniye 200x200
olarak gözükmeli ardından küçülerek 60x60 olarak gözükmelidir.
● Kullanıcı banner’a tıklandığında Kariyer.net Hoş Geldin sayfasına yönlendirilmelidir.
● Kariyer.net aynı bilgisayardan cookie’ler silinmeden 4 den fazla ziyaret edildiğinde AA-
kobiBannerClosed cookie değeri 4 ün üzerinde olmalı ve banner gözükmemelidir.
● Banner’ın sağ üst köşesinde çarpı şeklinde bir kapatma ikonu olmalı ve tıklandığında
banner kapanmalıdır.
● Banner daha önce kullanıcı tarafından kapatıldıysa, tekrar gösterilmemelidir.
11. PROJE ÇERÇEVESİ
11
Use Case Testing (Kullanılabilir Durum Testi)
• Use Case Nedir?
• Use Case Testing Tekniği Nedir? Test Senaryoları Nasıl Oluşturulur?
• İzlenebilirlik Matriksi (Traceability Matrix) Nedir?
14. PROJE ÇERÇEVESİ
14
Checklist Based Testing (Liste Bazlı Test)
Kullanıcı Hikayelerinden bağımsız olarak hazırlanmış genel checklist’ler
dikkate alınarak koşturulan testlerdir.
15. PROJE ÇERÇEVESİ
15
Checklist Based Testing (Liste Bazlı Test)
Örnek:
● Sistemde (Web/Mobil) yer alan tüm linkler doğru çalışmalıdır.
● Sistemdeki yazılarda dilbilgisi hatası olmamalıdır.
● Yazı boyutları, fontları, beklenildiği gibi olmalıdır.
● Sistemde yüklenememiş/kırık hiç resim olmamalıdır.
● Resimler, yazılar vb. diğer bileşenler arasındaki hiza düzgün olmalıdır.
● Tüm butonlar düzgün çalışmalı ve kullanıcıyı ilgili işleme yönlendirmelidir.
● Her sayfada ana sayfa logosu olmalı ve tıklandığında ana sayfaya yönlendirmelidir.
● Uyarı, bilgi mesajları doğru formatta görüntülenmelidir.
● Responsive olan bir sistem ise tüm çözünürlüklerde kontroller yapılmalıdır.
● Sitede yer alan tüm bileşenler (dropdown, checkbox, radio button, vs.) doğru
çalışmalıdır.
● Girdi alanlarındaki özel durumlar (numerik, alfanumerik, vb.) kontrol edilmelidir.
● Zorunlu alanlar boş bırakılarak işlemler yapılamamalıdır.
● Sitenin herhangi bir işlemi max 15 saniyeden uzun sürmemelidir.
● Vs. şekilde giden kontrollerdir.
17. PROJE ÇERÇEVESİ
17
Exploratory Testing (Keşif Testi)
Session-Based Testing
Ana Aktiviteler:
- Test Seans Süresi (Birkaç saat olmalıdır)
- Seans Aktiviteleri
o Seans Kurulumu
o Test Tasarımı ve Test Uygulaması
o Hata Araştırması
o Raporlama
- Testin amacı/amaçları belirtilmelidir
- Testin hedefi/hedefleri belirtilmelidir.
- Testin içerdiği işlevsellik (test bildirgesi – charter) yazılmalıdır.
Test Esnası ve Sonrasında Hazırlanacak Rapor İçeriği:
- Test Bildirgesi (Charter) [Testin fonksiyonalitesini belirtir.]
- Testi Gerçekleştiren Kişi
- Başlama Tarihi ve Zamanı
- Seans Metrikleri (Test Uygulama ve Hata Araştırma Süresince Toplanan Metrikler)
- Test Dataları
- Test Notları
- Bulgular
- Hatalar
20. PROJE ÇERÇEVESİ
20
Risk Based Testing (Risk Bazlı Test Tekniği)
RBT, en kritik ve en önemli hataların olabildiğince erken bir şekilde ve en
düşük maliyet ile bulunmasıdır.
Riskler… Olası problemler… Belirsizlikler…
21. PROJE ÇERÇEVESİ
21
Risk Based Testing (Risk Bazlı Test Tekniği)
Riskin Büyüklüğü = Olasılığı *
Magnitude of Risk = Likelihood * Impact
22. PROJE ÇERÇEVESİ
22
Risk Based Testing (Risk Bazlı Test Tekniği)
Risk-Bazlı testin en temel adımları aşağıda özetlenmiştir:
1. Öncelikle riskler belirlenir ve önceliklendirilmiş risk listesi oluşturulur.
2. Önceliklendirilmiş risk listesine göre test planı yapılıp, her bir risk için o
riskin araştırıldığı testler koşturulur.
3. Yapılan testler sonucunda bazı riskler ortadan kalkarken, bazı riskler ortaya
çıkarsa bunlar da test eforu dikkate alarak test edilir.
23. PROJE ÇERÇEVESİ
23
Risk Based Testing (Risk Bazlı Test Tekniği)
FMEA modeline değinecek olursak, burada 3 şeyi 5’lık skalalar ile ele alarak dikkat
ederek risk puanlamasını hesaplarız. Bunlar:
Severity (Hatanın/arızanın şiddeti)
Açıklama Önem Derecesi Puan
Veri kaybı, donanım veya güvenlik sorunları Acil 1
Geçici çözümü bile olmayan işlevsellik kaybı Yüksek 2
Geçici çözümü olan işlevsellik kaybı Orta 3
Kısmı işlevsellik kaybı Düşük 4
Kozmetik veya önemsiz yok 5
Priority (Hatanın/arızanın önceliği)
Açıklama Önem Derecesi Puan
Sistem değerinin tamamen kaybedilmesi Acil 1
Kabul edilemez sistem değeri kaybı Yüksek 2
Sistem değerinde azalma ihtimali olması Orta 3
Sistem değerinde kabul edilebilir azalma Düşük 4
Sistem değerinde ihmal edilebilir azalma Yok 5
Likelihood (Hatanın/arızanın olasılığı)
Açıklama Önem Derecesi Puan
Kesin olarak tüm kullanıcıların etkilenmeleri Acil 1
Bazı kullanıcıların etkilenmeleri Yüksek 2
Bazı kullanıcılar için olası etkilenmeleri Orta 3
Az sayıda kullanıcının sınırlı etkilenmesi Düşük 4
Gerçek kullanımda düşülünmeyecek etki Yok 5
Tüm bu üç nitelik (Hata Şiddeti, Öncelik ve
Olasılık) kendi içinde ayrı ayrı hesaplanır
ardından bir Risk Öncelik Puanı
(RPN/Risk Priority Number) elde etmek
için bu değerler birbirleri ile çarpılır.
Risk Öncelik Puanı (RPN) = S * P * L
Bu RPN değerine dayanarak, testin
kapsamını belirleyebiliriz. Daha düşük RPN,
daha yüksek risk olduğunu gösterir.
25. PROJE ÇERÇEVESİ
25
Risk Based Testing (Risk Bazlı Test Tekniği)
Summary
• Kullanıcı Kabul Testi Nedir?
• User Story Testing (Kullanıcı Hikayesi Testi)
• Use Case Testing (Kullanılabilr Durum Testi)
• Checklist Based Testing (Liste Bazlı Test)
• Exploratory Testing (Keşif Testi)
• Experienced Based Testing (Tecrübeye Dayalı Test)
• User Journey Test (Kullanıcı Yol Haritası Testi)
• Risk-Based Testing (Risk Bazlı Test Tekniği)
26. PROJE ÇERÇEVESİ
26
Risk Based Testing (Risk Bazlı Test Tekniği)
Okuma Tavsiyeleri
MAKALELER
Exploratory Testing (by Alper Mermer)
https://www.linkedin.com/pulse/kesfederek-test-yapmak-alper-mermer
Heuristic Test Strategy (by James Bach)
http://www.satisfice.com/tools/htsm.pdf
Risk Based Testing (by James Bach)
http://www.satisfice.com/articles/hrbt.pdf