Bozulmayı kullanıcıdan önce yakalayan testler
Back-end'iniz için iş kurallarından servisler arasındaki sözleşmelere kadar otomatik testler yazarız; bu testler her değişiklikte koşar.

Kimin için
Her düzeltmenin başka bir yeri bozduğu, kimsenin koda dokunmaya cesaret edemediği şirketler için.
Neyi çözer
- Bir hatayı düzeltmek, ancak canlıda ortaya çıkan başka bir hata doğuruyor.
- API'deki bir değişiklik uygulamayı ya da bir iş ortağının entegrasyonunu bozuyor; kimseye haber verilmemiş.
- Var olan testler belirgin bir neden olmadan düşüyor; sonuca kimse güvenmiyor.
- Bir sürümü test etmek, yayından önce birinin her şeye elle tıklamasına bağlı.
Ne yapıyoruz
- Birim testleri
- İş kuralları tek başına test edilir; en çok hataya yol açan uç durumlar da dahil.
- Entegrasyon testleri
- Gerçek veritabanı, kuyruk ve dış servisler, test sırasında konteynerlerde ayağa kalkar.
- Sözleşme testleri
- Bir API'yi kullanan ile sunan, biçim üzerinde anlaşır; bozan değişiklik yayından önce yakalanır.
- Brezilya'ya özgü senaryolar
- Pix ödemesi ve e-fatura akışlarında tekrarlanan ödeme, ret ve zaman aşımı.
- Test verisi
- Testin kendisinin ürettiği, tekrarlanabilir, kurgusal veri; gerçek kayıtlardan kopyalanmaz.
- Kararsız testler
- Rastgele düşen testler kapatılmaz; nedeni bulunur ve düzeltilir.
Neler teslim edilir
- Deponuzda birim, entegrasyon ve sözleşme testlerinden oluşan bir paket
- Her değişiklikte yayın hattında koşan, hata olursa yayını durduran testler
- Neyin test edildiğini, neyin henüz edilmediğini gösteren rapor
- Belgelenmiş test verisi stratejisi
- Ekibinizin aynı düzende yeni test yazması için kılavuz
Nasıl ilerliyoruz
Risk haritası
Hangi akışlar bozulunca en çok can yakıyor, hangilerinin zaten testi var.
Test altyapısı
Araçlar, test verisi ve konteynerli ortam ekip için hazırlanır.
Kritik akışlar
Önce en riskli akışların testleri, sonra geri kalanlar.
Sözleşmeler
Back-end, uygulamalar ve entegrasyonlar arasındaki sözleşmeler her sürümde denetlenir.
Yayın hattı
Testler, bir sürümün ilerleyip ilerlemeyeceğine karar vermeye başlar.
Teknoloji örnekleri
- Pact
- Testcontainers
- JUnit
- pytest
- Jest
- WireMock
- Playwright
İlgili hizmetler
Sık sorulan sorular
Hangi test kapsamını hedefliyorsunuz?
Sabit bir rakamla çalışmıyoruz. Risksiz kodu da içeren bir yüzdenin peşine düşmek yerine, bozulduğunda en pahalıya patlayan akışları iyi test etmeyi tercih ederiz.
Sözleşme testi ne demek?
Bir API'yi çağıran ile onu sunanın biçim konusunda hâlâ anlaşıp anlaşmadığını denetleyen test. Bir değişiklik bu anlaşmayı bozarsa test, yayından önce düşer.
Bankanın ya da SEFAZ'ın test ortamına karşı test yapılabilir mi?
Evet, banka ya da kurum bir test ortamı sunuyorsa. Bu ortamlar her zaman erişilebilir olmadığından testlerin çoğu taklit servislerle koşar; dış ortam son kontrole bırakılır.
Testler geliştirmeyi yavaşlatır mı?
Başta biraz. Zamanla ekip canlıdaki yangınlara daha az vakit harcar ve koda daha rahat dokunur.
Balkan'a yazın
Projeniz için yazın