Mayıs 8, 2024

Kod Yazmadan Test Nedir?

Kod yazmadan test otomasyonu; test senaryolarını bir programlama diliyle değil, görsel arayüzler, kayıt-oynat (record-playback) ve AI destekli adım önerileriyle kurgulamanızı sağlar. Amaç, daha hızlı kurulum, daha düşük giriş bariyeri ve daha sürdürülebilir bir test süreci oluşturmaktır.

Neden 2025’te Daha Önemli?

  • Hız: Release döngüleri kısalıyor; test yazma/onarım süresi kritik.
  • Erişilebilirlik: QA ekiplerinde teknik seviyesi farklı roller var.
  • AI Desteği: Akıllı locator’lar, kırılan testlerin kendini onarması (self-healing), test adımı önerileri.

Hangi Senaryolarda En Çok İşe Yarar?

  • Smoke/Regression: Stabil ve tekrar eden akışları hızlıca kapsar.
  • Form Akışları & Ödeme Adımları: Görsel akışlarla netleşir.
  • Kabul Testleri (UAT): Teknik olmayan paydaşlar sürece erken dahil olur.
  • Cross-Browser/Responsive Kontroller: Kayıtlı akışların farklı ortamlarda yeniden yürütülmesi kolaydır.

Sınırlamalar (Gerçekçi Bakış)

  • İleri Seviye Koşullar/Veri Manipülasyonu: Bazen low-code genişletme gerekir.
  • Versiyon Kontrol/Code Review Kültürü: Klasik kod repolarındaki akışlara göre farklı araç seti gerekebilir.
  • Aşırı Kayıt: Plansız “record” ile şişen, kırılgan testler oluşabilir.

Başlangıç Planı (4 Adım)

1) Hedefleri ve metrikleri belirleyin

  • Hedef: “Checkout akışında %80 test kapsamı, her release’te <10 dk smoke run”
  • Metrikler: Geçiş oranı, flaky oranı, ortalama onarım süresi (MTTR)

2) Akış envanteri çıkarın

  • En kritik kullanıcı akışlarını listeleyin (kayıt, giriş, sepet, ödeme vb.)
  • Her akış için: önkoşullar, test verisi, kabul kriteri

3) No-Code/Low-Code kurgu

  • “Record” ile çekirdek akışı çıkarın
  • AI locator/self-healing açık olsun
  • Parametrik veri: e-posta, kullanıcı rolü, kupon kodu gibi alanları değişkenleştirin
  • Assertion stratejisi: sadece metne değil, duruma/olaya assertyon yapın (örn. “Sipariş özeti göründü” + “toplam > 0”)

4) CI/CD entegrasyonu & raporlama

  • Her PR’da smoke seti koşun (hızlı geri bildirim)
  • Raporlarda: kırılan test sınıflandırması, kök neden notları
  • Slack bildirimleri + Testim X topluluk kanalına kısa özet düşsün

AI’nın Katkısı (Pratik Örnekler)

  • Akıllı Seçiciler: Dinamik id/class değişse bile öğeyi bağlamdan tanır.
  • Adım Önerileri: “Login sonra ‘Hesabım’a git, sipariş geçmişini doğrula” gibi doğal dil adımlarının görsel adımlara dönüşmesi.
  • Oto-Onarım: Kırılan adım için alternatif locator’ı otomatik deneme.
  • Test Verisi Üretimi: Uç senaryolar için yapay veriler (valid/invalid).

Sağlam Testler İçin 7 İpucu

  1. Küçük Başlayın: Önce smoke, sonra regression genişletin.
  2. Tek Amaç Prensibi: Her test bir akış amacına odaklansın.
  3. Stabil Locator’lar: Metin + rol + hiyerarşi kombinasyonlarını tercih edin.
  4. Beklemeler: “Akıllı bekleme (smart wait)” kullanın; sabit sleep’ten kaçının.
  5. Veri Ayrıştırma: Test verisini dışa alın (CSV/JSON/ENV).
  6. Görünürlük/doğrulama: Sadece “element var” değil, iş değeri doğrulayın (toplam, durum, yönlendirme).
  7. Kırılgan Adımları İzole Edin: 2FA, captcha, dış servisleri mock/fake edin.

Takım Yapılanması ve Yetkinlik

  • QA Engineer: Senaryo tasarımı, kapsam artırma, raporlama
  • QA Lead: Kapsam/kalite metrikleri, CI/CD stratejisi
  • Dev Temsilcisi: Testability (data-test-id, mock endpoints)
  • Topluluk Katkısı: Paylaşılan “best practice” kütüphanesi

Ölçümleme: Başarıyı Nasıl Kanıtlarız?

  • Regresyon Süreleri: Örn. 90 dakikadan 15 dakikaya
  • Flaky Oranı: <%5 hedef
  • Defect Kaçış Oranı (DRE): Canlıda yakalanan bug sayısını düşürmek
  • MTTR: Kırılan testi düzeltme süresini kısaltmak

Sık Yapılan Hatalar

  • “Her şeyi kaydedelim” yaklaşımı: Bakımı zor, kırılgan testler.
  • Veri/ortam kirliliği: Test verisini temizlememek.
  • Tek kişi bağımlılığı: Testleri paylaşılabilir hale getirmemek.
  • Raporları okumamak: Kırılma sebeplerini sınıflandırmamak.

Sonuç

Kod yazmadan test, QA ekiplerinin hız ve erişilebilirlik ihtiyacına çok iyi cevap veriyor. Doğru metrikler, akıllı assertion’lar, veri stratejisi ve CI/CD entegrasyonu ile; daha az flaky, daha hızlı geri bildirim ve daha yüksek güven elde edersiniz. Testim X topluluğunda bu pratiklerin canlı örneklerini, şablonlarını ve kısa workshop’larını bulabilirsiniz.

Categories: Blog