how publish pact contract pact broker
Tento výukový program vysvetľuje dve možnosti nastavenia Pact Broker. Zmluvu o pakte môžete zverejniť v Pact Broker pomocou rámca pact-js a v službe Postman:
otázky na pohovor s vývojárom pl / sql
Čo je Pact Broker?
Pact Broker je nástroj poskytovaný tvorcami rámca Pact. Uľahčuje ukladanie zmlúv, vizualizáciu spotrebiteľov a stav overovacej zmluvy.
Dôvod, prečo mať samostatného sprostredkovateľa na ukladanie zmlúv, je ten, že každá sada testov je často napísaná v rôznych úložiskách a dokonca v rôznych jazykoch.
=> Preskúmajte tu jednoduchú školiacu sériu testovania zmlúv
Čo sa dozviete:
Zverejnenie zmluvy o pakte u sprostredkovateľa Pact
Predtým, ako sa pustíme do zverejnenia zmluvy, musíte sa rozhodnúť, či chcete Pact Broker hostiť sami, alebo využiť hostovanú službu, ako je napr. Pactflow .
Osobne sme sa rozhodli pre Pactflow, pretože ponúka ďalšie výhody uvedené v nasledujúcej tabuľke:
Funkcia | Pactflow | Samoobslužné |
---|---|---|
SSO (Github) | Áno | Nie |
Údržba serverov | Nie | Áno |
Zabezpečené tokeny / tajomstvá | Áno | Nie |
Webhooky | Konfigurovateľné používateľské rozhranie | Ručná konfigurácia |
Infraštruktúra ako kódex | Terraform | Dockerfile |
Nastavenie Pact Broker s Pactflow
Pactflow poskytuje bezplatnú možnosť, ktorá vám bude účtovaná až po uplynutí 180-mesačnej skúšobnej verzie (od mája 2020), čo je 10 a pol roka.
- Zaregistrujte si svoju e-mailovú adresu v službe Pactflow (ďalších používateľov môžete kedykoľvek pridať).
- Nastavte informácie o spoločnosti a subdoménu pre svojho Pact Broker.
- Teraz by ste mali dostať e-mail s dočasným používateľským menom a heslom.
- Prejdite do svojej subdomény (tu je moja subdoména ) a prihláste sa. Ak to bolo úspešné, mali by ste vidieť ukážkovú aplikáciu s už nastavenou zmluvou.
Neskôr v tomto výučbe sa pozrieme na to, ako overiť na základe zmlúv v rámci Pactflow.
Nastavenie Pact Broker s Dockerom (docker-compose)
Pact ponúka obrázky ukotvenia, pomocou ktorých môžete jednoducho roztočiť svojho vlastného Pact Broker za pár sekúnd pomocou ukotvenia do doku. The úložisko github vysvetľuje, ako je to možné, poďme sa tým podrobnejšie venovať neskôr.
Nižšie sú uvedené niektoré ďalšie kroky, ktoré sa pridávajú na zabezpečenie stabilnej služby.
- Pridajte „reštart: vždy“ do ukotviť-zložiť služby.
- Spustite docker-compose na serveri pomocou odpojeného argumentu `-d`, aby mohol bežať na pozadí.
Zmluva o zverejnení s pact-js
Každá implementácia jazyka Pact má svoje vlastné metódy zverejňovania zmlúv sprostredkovateľovi. Zverejnenie v Pact Broker v JavaScripte by malo vyzerať podobne ako táto.
Vyššie uvedený token sprostredkovateľa Pact je uložený v Pactflow v nastaveniach. Screenshoty sú zobrazené nižšie. Uistite sa, že používate token CI, ktorý má povolenia na čítanie a zápis.
Ísť do Nastavenia a potom Tokeny API v Pactflow.
Pravdepodobne tajomstvá a heslá by nemali byť uložené v gite, preto by sa mal použiť súbor `.env`, na ktorý sa má v kóde odkazovať, ako je uvedené nižšie.
Spolu s „PublishVerificationResult“ hodnotu, nechcete overovať zmluvy vo vašom miestnom prostredí. Preto by mala byť nastavená iná premenná prostredia, ako je uvedené nižšie.
Teraz môže byť zmluva zverejnená priamo v kóde.
Zmluva o zverejnení s poštárom
Na overenie prvej zmluvy zvyčajne používame službu Postman, aby sme sa ubezpečili, že je sprostredkovateľ správne nastavený. Poštár sa tiež používalo, keď zákazníci pomaly prijímali Pakty v rámci svojho tímu, preto sme zmluvu zverejnili u Pact Broker a požiadali sme tím spotrebiteľov, aby overili, či sú so zmluvou spokojní.
To nám ako tímu poskytovateľov umožnilo overiť oproti zmluve a mať väčšiu dôveru v naše nasadenia. Keď bol tím spotrebiteľov pripravený prijať Pakt, mali už k dispozícii aj pracovný príklad.
Kroky pre zverejnenie publikácie Postman sú uvedené nižšie:
# 1) PUT: Vytvorte požiadavku
- Prejdite na ikonu subdoména
- Meno poskytovateľa
- Meno spotrebiteľa
- Verzia
# 2) Autorizácia: Pridajte token na doručiteľa (čo je ekvivalent k tokenu API, ako je uvedené vyššie).
# 3) Zahrňte Pact JSON ako telo (JSON je možné skopírovať priamo do poľa body, čím nastavíte hlavičku Content: Type na „application / json“).
Zdieľanie paktov s poskytovateľmi API
Po zverejnení vašich zmlúv môže poskytovateľ získať zmluvu Pact vyžiadaním adresy URL Pact Broker pomocou:
Spravidla budete chcieť vykonať overenie pomocou konkrétnej verzie rozhrania API. Napríklad, v architektúre mikroslužieb tím spotrebiteľov neustále vykonáva zmeny v informáciách, ktoré od API požadujú.
Okrem toho poskytovateľ API robí zmeny súčasne a bude ich potrebné overiť oproti verzii, ktorá je momentálne nasadená do výroby, pretože to zabezpečí bezproblémové nasadenie.
Záver
Nakoniec máte Pact Broker so zverejnenou zmluvou, v ďalšom tutoriále sa pozrieme na to, ako napísať test poskytovateľa zabalením .Net Core API, stiahnutím najnovšej zmluvy a overením proti miestnemu API.
Rámec Pact je cenný nielen na začiatku vášho projektu, a to na základe spotrebiteľa, ale prínos vizualizácie vašich zákazníkov pomocou Pact Broker je určite kľúčovým prispievateľom k používaniu tohto nástroja.
Schopnosť lepšie porozumieť interakciám spotrebiteľa a tomu, ako sa API v skutočnosti používa, sa môže pri preklade často stratiť a môže mať za následok produkčný problém, ktorý sa môže vyskytnúť. To vedie k hodinám ladenia a prehľadávania v protokoloch aplikácií.
V tomto tutoriáli sme sa naučili dve rôzne možnosti nastavenia vášho Pact Broker. Svoju zmluvu ste zverejnili pomocou rámca pact-js a tiež v službe Postman.
V tomto okamihu musíte premýšľať o zosúladení svojich verzií naprieč mikroslužbami a tiež o dôslednom pomenovaní poskytovateľov, aby ste vytvorili ľahko čitateľnú a zrozumiteľnú sieť Pact Broker.
=> Navštívte tu a dozviete sa testovanie zmlúv od nuly
Odporúčané čítanie
- Ako napísať test spotrebiteľskej zmluvy v JavaScripte
- Úvod do testovania zmlúv s príkladmi
- Overte zmluvu Pact a nepretržité nasadenie pomocou Pact CLI
- Výukový program pre Docker: Inštalácia a úvod do Dockeru
- Pokročilé skriptovanie pre komplexné testovanie pracovných postupov v službe Postman
- Ako vytvoriť dokumentáciu API v službe Postman?
- Ako používať Postman na testovanie rôznych formátov API?
- Top 10 najobľúbenejších otázok na pošte s rozhovormi s odpoveďami