JackCode naviqasiyasıiGaming məhsullarını yaradın, işə salın və miqyaslayın.
Dili dəyiş
Praktik bələdçi

Müqavilə testi

Müqavilə testləri - API-nin müştərinin gözləntilərinə cavab verməsinə zəmanət verir: dəyişikliklər zamanı səhvlərin qarşısının alınması və xidmətlər arasında uyğunluq nəzarəti.
Ekspert Stanislav Anisimov

Komandalar və ya xarici tərəfdaşlar arasında API ilə işləyərkən sorğu və cavab formatının proqnozlaşdırıla bilən qalması xüsusilə vacibdir. Müqavilə testi hər iki tərəfin - müştəri və serverin mübadilə strukturuna razı olduğunu və yeniləmələr zamanı pozulmadığını yoxlamağa imkan verir.

Biz avtomatik olaraq API sənədlərinə və ya istehlakçının gözləntilərinə uyğunluğunu yoxlayan müqavilə testlərini tətbiq edirik - istehsaldan əvvəl.

API-də müqavilə nədir

Müqavilə aşağıdakıları müəyyən edən müqavilədir:
  • hansı sahələrdə sorğu və cavab var
  • Hansı məlumat formatları məqbuldur
  • hansı status kodları geri qaytarılır
  • hansı məcburi parametrlər tələb olunur

Müqavilənin pozulması = müştəri və ya xidmət tərəfində potensial uğursuzluq.

Bu necə işləyir

Tərəf Nə test olunur
Provayder (API) API müştərinin cavab strukturu ilə bağlı gözləntilərinə cavab verməlidir
Müştəri (consumer) Müştəri müəyyən bir sxem gözləyir - test onun yerinə yetirildiyini yoxlayır
Bidirectional İki tərəfli test: həm müştəri, həm də server müqaviləyə razıdır

İstifadə olunan alətlər: Pact, Spring Cloud Contract, Dredd, Postman Contract Tests.

Müqavilə testinin üstünlükləri

Deploya qədər uyğunsuzluqların aşkarlanması

Müştəriləri pozan «sakit» dəyişikliklərə qarşı qorunma

API versiyalarının təhlükəsiz yenilənməsi

İnkişaf komandaları arasında etimadın artırılması

Müqavilə dəyişikliyi tarixçəsinin loqosu

Necə həyata keçiririk

OpenAPI/Pact formatında müqavilələrin müəyyən edilməsi

Hər bir kommitdə avtomatik sınaq keçidləri ilə CI inteqrasiyası

Vizuallaşdırma və müqavilə dəyişikliyinin tarixi

Çərşənbə bölgüsü (staging/production)

Xarici inteqratorlar üçün müqavilələrin dərc edilməsi

Harada xüsusilə vacibdir

Ayrılmış məsuliyyətli mikroservislər

Xarici B2B inteqrasiyaları olan platformalar

Bir neçə müstəqil komandanın API üzərində işləmək

Səhv yolverilməz olan kritik sistemlər (maliyyə, dövlət xidmətləri)


Müqavilə testi server və müştəri arasında etibarlı körpüdür. Biz heç bir yeniləmənin inteqrasiyanı pozmayacağı və gözlənilməz uğursuzluqlar gətirməyəcəyi bir proses qurmağa kömək edəcəyik.