Yazı yükleniyor...
Uzun süredir E2E test otomasyonu için Solarwinds kullanıyordum. Başta işimi görüyordu ama zamanla bazı problemler gözüme batmaya başladı:
Bir noktadan sonra şunu fark ettim: Mevcut araçlarla uğraşmaktansa, kendi ihtiyacıma göre bir şeyler geliştirmek çok daha mantıklı olacak.
Böylece Gamma ortaya çıktı: kendi projelerimde ve gelecekteki müşteri işlerinde kullanabileceğim, hızlı ve esnek bir test otomasyon aracı.
Solarwinds gibi araçlar güçlü görünüyor ama genelde “herkese hitap eden genel çözümler” oluyor. Benim ise çok daha basit ama daha esnek bir şeye ihtiyacım vardı:
Bunların hiçbiri mevcut araçlarda beni tatmin edecek seviyede değildi.
Gamma’yı geliştirmeye başladığımda aklımdaki ilk hedef şuydu: Test süreçleri, kod bilmeyen biri için bile anlaşılır olmalı.
Bu yüzden en çok emek verdiğim kısım GUI oldu.
Kısacası “testlerim çalışıyor mu?” sorusunu birkaç tıkla yanıtlamak mümkün.
Gamma’yı sadece kendi projem için yazmadım. Bir sonraki müşteri işimde de kullanabilmek istiyordum. Bu yüzden multi-project yapısını ekledim.
Her proje için:
Bu sayede tek aracı farklı alanlarda kullanabiliyorum.
Selenium zaten bir klasik, ama tek başına her zaman yetmiyor. Bu yüzden Gamma’ya Chrome DevTools Protocol (CDP) entegrasyonu da ekledim.
Bunun avantajları:
Bir test başarısız olduğunda “neden?” sorusunun cevabını bulmak çoğu zaman vakit alır. Gamma’da bu süreç otomatik:
Üstelik her run için timestamp’li klasörler (logs/20241201-143022-checkout
) oluşturuluyor. Böylece geçmiş testleri kıyaslamak ya da bir bug’ın ne zaman ortaya çıktığını anlamak çok kolay.
Gamma’nın beni en çok tatmin eden yanı şu:
Eksik gördüğüm bir şey varsa oturup ekleyebiliyorum. İhtiyacım olan özelliği kimsenin roadmap’ine bakmadan, release beklemeden yazabiliyorum.
Gamma henüz ilk sürümünde ama aklımda birçok geliştirme planı var:
Bazen mevcut araçlarla idare etmek kolay geliyor. Ama kendi ihtiyaçlarınıza göre bir şey üretmek çok daha tatmin edici.
Gamma benim için sadece bir test aracı değil; aynı zamanda bir “yan projenin nasıl gerçek bir ihtiyacı çözebileceğinin” kanıtı oldu.
🔗 Projeyi merak ediyorsanız GitHub reposu burada:
👉 Gamma - E2E Testing Tool