Son güncelleme:
Stanislav Anisimov
Sözleşme testi
Click to expand / collapse

Ekipler veya harici ortaklar arasında API'lerle çalışırken, isteklerin ve yanıtların biçiminin öngörülebilir kalması özellikle önemlidir. Sözleşme testi, her iki tarafın da - istemci ve sunucu - değişim yapısını kabul ettiğini ve güncellemeler sırasında ihlal etmediğini doğrulamanızı sağlar.

Üretime geçmeden önce API uyumluluğunu belgelere veya tüketici beklentilerine göre otomatik olarak kontrol eden sözleşme testleri uyguluyoruz.


API sözleşmesi nedir

Bir sözleşme, aşağıdakileri tanımlayan bir anlaşmadır:
  • Hangi alanların istek ve yanıt içerdiği
  • Hangi veri formatlarına izin verilir
  • Hangi durum kodlarının iade edildiği
  • Hangi zorunlu parametreler gereklidir

Sözleşme ihlali = potansiyel müşteri veya hizmet hatası.


Nasıl çalışır

PartiNeler test ediliyor
Sağlayıcı (API)API, yanıt yapısı için müşteri beklentilerini karşılamalıdır
Müşteri (tüketici)Müşteri belirli bir şema bekliyor - test karşılandığını kontrol ediyor
Çift yönlüİki yönlü test: hem istemci hem de sunucu sözleşmeyi kabul eder

Kullanılan araçlar: Pakt, Bahar Bulut Sözleşmesi, Dredd, Postacı Sözleşme Testleri.


Sözleşme testinin faydaları

Tükenmeden önce uygunsuzlukların belirlenmesi

Müşterileri kıran "sessiz" değişikliklere karşı koruyun

API sürümlerini güvenle güncelleyin

Geliştirme ekipleri arasındaki güveni artırın

Sözleşme değişiklik geçmişini günlüğe kaydetme


Nasıl uyguluyoruz

OpenAPI/Pact sözleşmelerini tanımlama

Her taahhütte otomatik test çalışmaları ile CI entegrasyonu

Sözleşme değişikliklerinin görselleştirilmesi ve tarihçesi

Evreleme/üretim

Dış Entegratörler için Yayın Sözleşmeleri


Özellikle önemli olan yerlerde

Paylaşılan sorumluluk mikro hizmetleri

Harici B2B entegrasyonlarına sahip platformlar

Birden Çok Bağımsız Komutla API'ler üzerinde çalışma

Hatanın kabul edilemez olduğu kritik sistemler (finans, kamu hizmetleri)


Sözleşme testi, sunucu ile müşteri arasında güvenilir bir köprüdür. Hiçbir güncellemenin entegrasyonu bozmadığı ve beklenmedik hatalar getirmediği bir süreç oluşturmanıza yardımcı olacağız.

Popüler konular


Ana konular