Agile Takımlarda Testin Gerçek Anlamı

Agile Takımlarda Testin Gerçek Anlamı
Photo by Patrick Perkins / Unsplash

Test, işin sonunda yapılan kontrol değil; işin başından sonuna kadar süren akıl yürütme biçimidir.

Agile sonrası yazılımcılık dünyasında değişmeyen tek şey var: hız değil, belirsizlik. İhtiyaçlar sabit değil, planlar kesin değil, teknoloji durmuyor. Bu ortamda testin rolü artık eskisinden daha geniş. Bugün test, sadece hatayı bulmak ve raporlamak değil, ürün geliştirme döngüsünü güvenli ve sürdürülebilir kılma sanatı.

Eskiden test, geliştirmeden sonra gelen “kalite kontrol durağı”ydı. Şimdi ise sprintin ortasında, başında, hatta fikrin ilk kağıda döküldüğü anda devreye girmesi gerekiyor. Yani test zamanlama değil, konum değiştirdi. Üretim hattının sonunda duran bekçi olmaktan çıkıp, sürecin her noktasına yayılan bir bilinç haline geldi.

İşte bu yazı tam olarak bunu anlatacak: Agile’da test neye dönüşüyor, ekipler bunu gerçekten nasıl yaşıyor, yaşamadığında ne oluyor ve testin asıl anlamı nedir?


1. Agile’da Test = Sürecin En Başındaki Soru

Testin gerçek değeri bir feature tamamlandığında değil, başlamadan önce ortaya çıkar.

Bir backlog maddesi sprint’e alınacaksa şu sorular sorulmalı:

  • Bu özelliğin başarısız olabileceği noktalar neler?
  • Kullanıcı nasıl davranacak, ne bekleyecek?
  • En kötü senaryo ne?
  • Bu işin doğrulandığını nasıl anlayacağız?
  • Ne test edilmezse ileride bizi yakar?

Test, işte bu sorularla başlar.

Kod yazılmadan önce risk konuşuluyorsa, test başlamıştır.

Sprint planlama ve refinement oturumlarında test senaryosundan bahsediliyorsa, test başlamıştır.

Yani test, kod çalışırken değil, beyinler çalışırken devrededir.


2. Sprint İçinde Test, Sprint Sonunda Değil

Agile’ı yanlış uygulayan takımların ortak cümlesi şöyledir:

“Bütün işler bitti, şimdi test başlasın.”

Bu cümle duyulduğunda, test aslında çoktan kaybetmiştir. Çünkü sprint bitimine üç gün kalmış, dev teslim edilmiş, test backlog’un sonuna itilmiş olur. Ekip “yetişir mi?” stresine girer. Sonuç: geç kalınmış hatalar, ertesi sprint’e taşınan iş, borç birikmesi.

Doğru yaklaşım ise şudur:

Geliştirme sürerken test paralel ilerler.

Kod yazılırken test senaryosu da yazılır.

Feature tamamlanır tamamlanmaz test başlar.

UI tamamlanmadan API test edilir.

Mock varken bile senaryolar çalıştırılır.

Küçük parçalar erken doğrulanır.

Sprint sonunda test yapılmaz,

Sprint boyunca test yaşanır.

Bu fark basit görünebilir, fakat takımlar arasında yıldız gibi fark yaratır.


3. Testçinin Rolü: Hata Avcısı Değil, Risk Tercümanı

Agile dünyasında test yapan kişi yalnızca bug raporlayan kişi değildir.

Testçi şunları yapar:

  • Gereksinimde boşluk görür ve söyler.
  • Kullanıcının aklına gelmeyen kullanımları düşünür.
  • Senaryoları parçalara ayırır.
  • Riskleri masaya koyar.
  • Problemi ortaya çıkarır, çözüm dayatmaz.
  • Aceleci teslimata fren olur, gerekirse rahatsız eder.

Agile ekipte tester, herkesin sevdiği kişi olmak zorunda değil.

Görevi memnun etmek değil, uyandırmaktır.

Doğrusu budur.


4. Test Hiçbir Zaman Sadece Testçinin Sorumluluğu Değildir

Bu konu çoğu tartışmayı bitirir:

Testçinin işi test etmektir.

Kalitenin sahibi ise takımdır.

PO gereksinimi net tanımlamazsa, kalite düşer.

Developer unit test yazmazsa, kalite düşer.

Tester risk belirtir ve görmezden gelinirse, kalite düşer.

DevOps pipeline otomatize edilmemişse, kalite düşer.

Kimsenin “benim görevim değil” deme lüksü yoktur.

Kalite bir rolde değil, disiplinlerde doğar.

Agile bunu zorunlu kılar.


5. Testi Yöneten Şey Doküman Değil, Farkındalıktır

Ağır dokümantasyon kültürü testin hızını öldürür.

Hiç dokümansız kültür ise hafızayı öldürür.

Agile test burada orta yolu ister:

  • Gereksiz detay yok
  • Net kabul kriterleri var
  • Kritik akışların senaryosu yazılı
  • Riskler görünür
  • Regresyon listesi sürekli güncel

Test notları bile bazen tek sayfalık olabilir, yeter ki iş görsün.

Agile’ın test felsefesi şudur:

Çok yazma, doğru yaz.

Her şeyi test etme, doğruyu test et.


6. Otomasyon Yardımcıdır, Hakim Değil

Agile ekiplerde büyük yanılgı:

“Otomasyon varsa test çözülmüştür.”

Gerçek şu: Otomasyon hız kazandırır ama düşünmenin yerini almaz.

Otomasyon rutin işin aracıdır, kararın değil.

Gerekli olan:

  • Unit test ile kod güveni
  • API otomasyonu ile çekirdek sağlamlığı
  • UI otomasyonu ile kritik akış doğrulaması
  • Manuel keşif testi ile kullanıcı gözü

Tek taraf ağır basarsa kalite tek gözle bakmaya döner.

Agile test dengedir:

Yazılım düşünür, otomasyon hızlandırır, testçi keşfeder.


7. İyi Agile Test Şöyle Anlaşılır

Bir takımda bunlar yaşanıyorsa test yerini bulmuştur:

  • Sprint sonunda kimse “test için süre kalmadı” demiyorsa
  • Test senaryosu geliştirme başlamadan konuşuluyorsa
  • Hata bulmak sürpriz değil, doğal akışsa
  • Geriye dönük suçlu aranmıyorsa
  • Bir iş “Done” dendiğinde gerçekten bitmişse
  • Regresyon korkusu yoksa
  • Takım test konuşmayı normal karşılıyorsa

Kritik ölçü tek cümledir:

Takım ürüne güveniyorsa test başarılıdır.


8. Test Kültürü Bir Kez Yerleşirse Geri Dönüşü Yoktur

Agile test disiplinini oturtmak ilk başta zor gelir.

Toplantılar uzar, risk konuşmaları sıkıcı gelir, “neden test etmiyoruz ki zaten?” soruları duyulur.

Sonra bir gün hatalar azalır, teslimatlar hızlanır, ekip daha rahat nefes alır.

İşte o an insanlar şöyle der:

“Bunu nasıl daha önce yapmıyorduk?”

Kalite alışkanlıktır. Alıştıktan sonra bırakılmaz.


9. Son Söz

Agile’da test:

  • süreç sonunda yapılan kontrol değil,
  • sprint içinde yaşayan refleks,
  • koddan önce başlayan düşünce,
  • herkesin taşıdığı yük,
  • kimsenin tek başına sorumlusu olmadığı kültürdür.

Tester’ın görevi hataları yakalamak değil,

ekibin doğru karar almasına yardım etmektir.

Agile test budur.

Tek cümle ile bitireyim:

Test, ürünün bittiğini söyleyen kişi değil; gerçekten bitip bitmediğini söyleyebilen kişidir.

Read more

Testin Görünmeyen Yüzü: Kaliteyi Yöneten İnsanlar

Testin Görünmeyen Yüzü: Kaliteyi Yöneten İnsanlar

Yazılım kalitesi çoğu zaman araçlarla, test senaryolarıyla, otomasyon oranlarıyla anlatılır. Raporlar grafiklerle dolar, metrikler konuşur. Ancak çoğu ekip şunu geç fark eder: Kaliteyi asıl belirleyen şey kullanılan araçlar değil, o araçları kullanan insanların tutumu ve davranışlarıdır. Aynı teknolojiye, aynı test setlerine, aynı otomasyon altyapısına sahip iki takım arasında dramatik kalite

By Savaş Avcu