TestMace. Ukuqala ngokukhawuleza

TestMace. Ukuqala ngokukhawuleza

Molweni nonke. Siphuma kancinci emthunzini kwaye siqhubeka nothotho lwamanqaku malunga nemveliso yethu. Emva koko ngaphambili inqaku lokuphonononga, sifumene ingxelo eninzi (ubukhulu becala eyakhayo), iingcebiso kunye neengxelo zebug. Namhlanje siza kubonisa TestMace usebenza kwaye uya kuba nakho ukuxabisa ezinye zeempawu zesicelo sethu. Ukuze untywiliselwe ngokupheleleyo, ndiyakucebisa ukuba ubhekisele kumaxwebhu ethu http://docs-ru.testmace.com. Ngoko, masihambe!

isicwangciso

Masiqale nge-banality. Isicelo siyafumaneka kwaye sivavanywa ngokwenene kumaqonga amathathu - Linux, Windows, MacOS. Ungakhuphela isifakeli se-OS onomdla kuyo iwebhusayithi yethu. Kubasebenzisi beLinux kunokwenzeka ukuhlohla iphakheji ye-snap. Ngenene sinethemba lokuba iMicrosoft Store kunye neApp Store izakufika kuyo kungekudala (Ngaba iyimfuneko? Ucinga ntoni?).

Imeko yovavanyo

Sikhethe le meko ilandelayo njengesifundo sethu sovavanyo:

  • Ngena: umsebenzisi - admin, igama lokugqitha - igama lokugqitha
  • yongeza ingeniso entsha
  • Masijonge ukuba irekhodi yongezwa ngokuchanekileyo

Siza kuvavanya https://testmace-quick-start.herokuapp.com/. Oku kuqhelekile i-json-server, igqibelele ukuvavanya izicelo ezinjalo. Songeze ugunyaziso ngophawu kuzo zonke iindlela ze-json-server kwaye senza indlela yokungena ukuze sifumane lo mqondiso. Siya kuhamba ngokuqhubekayo, ngokuthe ngcembe siphucula iprojekthi yethu.

Ukwenza iprojekthi kunye nokuzama ukwenza iqumrhu ngaphandle kwesigunyaziso

Okokuqala, makhe iprojekthi entsha (ifayile->Iprojekthi entsha). Ukuba usungula isicelo okokuqala, iprojekthi entsha iya kuvula ngokuzenzekelayo. Okokuqala, makhe sizame ukwenza isicelo sokwenza irekhodi elitsha (ukuba kukho iirekhodi zokudala iirekhodi ngaphandle kokugunyaziswa). Khetha izinto kwimenu yentsingiselo yenowudi yeProjekthi Yongeza i-node -> Cela iNyathelo. Seta igama lendawo yenza iposti. Ngenxa yoko, i-node entsha iya kwenziwa emthini kwaye ithebhu yale node iya kuvula. Masisete le parameters yesicelo ilandelayo:

TestMace. Ukuqala ngokukhawuleza

Nangona kunjalo, ukuba sizama ukuzalisekisa isicelo, umncedisi uya kubuyisela ikhowudi ye-401 kwaye ngaphandle kokugunyaziswa asiyi kufumana nantoni na kule seva. Ewe, ngokubanzi, njengoko kulindelwe).

Ukongeza isicelo sogunyaziso

Njengoko sele kukhankanyiwe, sine-POST endpoint /login, ethatha i-json njengequmrhu lesicelo lefom: {"username": "<username>", "password": "<password>"}phi username ΠΈ password (kwakhona, kumhlathi oyintshayelelo ongentla) zineentsingiselo admin ΠΈ password ngokulandelelanayo. Ukuphendula, le siphelo sibuyisela i-json njenge {"token": "<token>"}. Siza kuyisebenzisela ukugunyazisa. Masidale Cela iNyathelo indawo enegama Ngema, uya kuba sisinyanya iprojekthi indawo yokusebenzela Usebenzisa ukutsala kunye nokuwisa, hambisa i-node enikiweyo emthini phezulu kune-node yenza iposti. Masisete ezi parameters zilandelayo kwisicelo esitsha esitsha:

Masiqhube isicelo kwaye sifumane ikhowudi yamakhulu amabini kunye nomqondiso kwimpendulo. Into efana nale:

TestMace. Ukuqala ngokukhawuleza

Ukuhlaziya: ukususa uphindaphindo lwesizinda

Ukuza kuthi ga ngoku izicelo azidityaniswanga kwiscript esinye. Kodwa oku akukuphela kokusilela. Ukuba ujongisisa, uya kuqaphela ukuba ubuncinci i-domain iphindwa kabini kwizicelo. Akulunganga. Lixesha lokuba siphinde senze le nxalenye yeskripthi sexesha elizayo, kwaye izinto eziguquguqukayo ziya kusinceda kule nto.

Kuqikelelo lokuqala, izinto eziguquguqukayo zisebenza indima efanayo nakwezinye izixhobo ezifanayo kunye neelwimi zenkqubo-ukuphelisa ukuphindaphinda, ukwandisa ukufundeka, njl. Unokufunda ngakumbi malunga neenguqu kwi amaxwebhu ethu. Kule meko, siya kufuna iinguqu zabasebenzisi.

Masichaze ukuguquguquka kwinqanaba leNode yeProjekthi domain ngentsingiselo https://testmace-quick-start.herokuapp.com. Kuba oku kuyimfuneko

  • Vula ithebhu ngale node kwaye ucofe i icon yesibali ngasekunene phezulu
  • Cofa apha + YONZA IYAHLUKA
  • Ngenisa igama eliguquguqukayo kunye nexabiso
    Kwimeko yethu, incoko yababini enenguqu eyongeziweyo iya kujongeka ngolu hlobo:

TestMace. Ukuqala ngokukhawuleza

KULUNGILE. Ngoku, ngenxa yelifa, sinokusebenzisa oku kuguquguquka kwinzala yalo naliphi na inqanaba lokuzalela. Kwimeko yethu ezi ngamaqhuqhuva Ngema ΠΈ yenza iposti. Ukuze usebenzise uguqulo kwindawo yokubhaliweyo, kufuneka ubhale ${<variable_name>}. Umzekelo, i-url yokungena iguqulelwa kuyo ${domain}/login, ngokulandelelanayo ngenxa yenza iposti i-url ye-node iya kujongeka ngathi ${domain}/posts.

Ngaloo ndlela, ngokukhokelwa ngumgaqo we-DRY, siye sayiphucula kancinane imeko.

Gcina uphawu kuguquko

Ekubeni sithetha ngezinto eziguquguqukayo, masenze ukwandisa kwesi sihloko kancinci. Okwangoku, kwimeko yokungena ngempumelelo, sifumana kwi-server ithokheni yogunyaziso, esiya kuyidinga kwizicelo ezilandelayo. Masigcine lo mqondiso kwinguqu. Ngokuba ixabiso loguqulo luya kumiselwa ngexesha lokwenziwa kwescript, sisebenzisa indlela ekhethekileyo yoku - izinto eziguquguqukayo.

Okokuqala, masenze isicelo sokungena. Kwithebhu Icazululiwe phendula, yisa isalathisi phezu kophawu nakwimenyu yentsingiselo (ebizwa ngokuba ngeqhosha lasekunene lemouse okanye ngokunqakraza kwiqhosha ...) khetha umba. Yabela ukwahluka. Incoko yababini iya kuvela ngemihlaba elandelayo:

  • Indlela - yeyiphi inxalenye yempendulo ethathiweyo (kwimeko yethu body.token)
  • Ixabiso langoku β€” leliphi ixabiso elilele ecaleni kweNdlela (kwimeko yethu eli lixabiso lophawu)
  • Igama eliguqukayo - igama loguqulo apho Ixabiso langoku iya kugcinwa. Kwimeko yethu kuya kuba njalo token
  • INode - apho i-oothers i-variable iyakwenziwa Igama eliguqukayo. Masikhethe iProjekthi

Incoko yababini egqityiweyo ibonakala ngolu hlobo:

TestMace. Ukuqala ngokukhawuleza

Ngoku ngalo lonke ixesha i-node isenziwa Ngema ukuguquguquka okuguquguqukayo token iya kuhlaziywa ngexabiso elitsha kwimpendulo. Kwaye oku kuguquguquka kuya kugcinwa ngaphakathi iprojekthi i-node kwaye, ngenxa yelifa, iya kufumaneka kwinzala.

Ukufikelela kwiinguqu eziguquguqukayo, kufuneka usebenzise inguqu eyakhelwe-ngaphakathi $dynamicVar. Umzekelo, ukufikelela kwithokheni egciniweyo, kufuneka ufowunele ${$dynamicVar.token}.

Sidlulisela ithokheni yogunyaziso kwizicelo

Kumanyathelo angaphambili sifumene ithokheni yogunyaziso kwaye konke okufuneka sikwenze kukongeza isihloko Authorization ngentsingiselo Bearer <tokenValue> kuzo zonke izicelo ezifuna ugunyaziso, kubandakanywa yenza iposti. Kukho iindlela ezininzi zokwenza oku:

  1. Khuphela ithokheni ngesandla kwaye wongeze isihloko sogunyaziso kwizicelo zomdla. Indlela iyasebenza, kodwa ukusetyenziswa kwayo kunqunyelwe kuphela kwizicelo zohlobo "olwenziwayo lwaphoswa kude". Ayilungelanga ukwenziwa ngokuphindaphindiweyo kwezikripthi
  2. Sebenzisa umsebenzi ugunyaziso.
  3. Sebenzisa iiheader ezingagqibekanga

Ukusebenzisa indlela yesibini kubonakala kucacile, kodwa kumxholo weli nqaku, le ndlela ... ayinamdla. Ewe, eneneni: indlela yogunyaziso dibanisa thabatha iqhelekile kuwe kwezinye izixhobo (nokuba sinezinto ezifana ilifa logunyaziso) kwaye akunakwenzeka ukuba uphakamise imibuzo.

Enye into ziiheader ezingagqibekanga! Ngamafutshane, iiheader ezingagqibekanga zizuzwa njengeeheader zeHTTP ezongezelelwe kwisicelo ngokungagqibekanga ngaphandle kokuba zivaliwe ngokucacileyo. Usebenzisa olu sebenziso, ungenza, umzekelo, uphumeze ugunyaziso lwesiko okanye ukhuphe ngokulula uphindaphindo kwizikripti. Masisebenzise olu phawu ukuze sigqithise uphawu kwiiheda.

Ngaphambili, sigcine ngobulumko ithokheni kwinguqu eguqukayo $dynamicVar.token kumgangatho weProjekthi node. Okuseleyo kukwenza oku kulandelayo:

  1. Chaza isihloko esihlala sihleli Authorization ngentsingiselo Bearer ${$dynamicVar.token} kumgangatho weProjekthi node. Ukwenza oku, kujongano lweProjekthi yenode kufuneka uvule incoko yababini enezihloko ezingagqibekanga (iqhosha Iintloko kwikona ephezulu ngasekunene) kwaye wongeze isihloko esihambelanayo. Incoko yababini enamaxabiso agcwalisiweyo iya kujongeka ngolu hlobo:
    TestMace. Ukuqala ngokukhawuleza
  2. Khubaza esi sihloko ukusuka kwisicelo sokungena. Oku kuyaqondakala: ngexesha lokungena, asikabi nayo ithokheni kwaye siya kuyifaka kunye nesi sicelo. Ke ngoko, kujongano lokungena lwesicelo kwisithuba Iintloko kwindawo ye Ilifa sukukhangela iheader yoGunyaziso.

Kuko konke. Ngoku iheader yogunyaziso iya kongezwa kuzo zonke izicelo ezingabantwana beProjekthi node, ngaphandle kwendawo yokungena. Kuyavela ukuba kweli nqanaba sele sineskripthi esilungile kwaye konke okufuneka sikwenze kukuyisungula. Ungaqhuba iskripthi ngokukhetha Run kwimenu yemeko yendawo yeProjekthi.

Ukujonga ukuchaneka kokudalwa kweposi

Ngeli nqanaba, iskripthi sethu sinokungena kwaye, usebenzisa ithokheni yokugunyazwa, yenza isithuba. Nangona kunjalo, kufuneka siqinisekise ukuba isithuba esitsha esenziwe sinegama elichanekileyo. Oko kukuthi, eyona nto iseleyo kukwenza oku kulandelayo:

  • Thumela isicelo sokufumana isithuba nge-id,
  • Khangela ukuba igama elifunyenwe kumncedisi lihambelana negama elithunyelweyo xa usenza iposti

Makhe sijonge inyathelo lokuqala. Ukusukela ukuba ixabiso le-id limiselwe ngexesha lokwenziwa kwescript, kufuneka wenze uguqulo oluguquguqukayo (masiyibize. postId) ukusuka kwindawo yenza iposti kumgangatho weProjekthi node. Sele siyayazi indlela yokwenza oku, jonga nje kwicandelo Gcina uphawu kuguquko. Konke okuseleyo kukudala isicelo sokufumana isithuba usebenzisa le id. Ukwenza oku, makhe senze i-RequestStep fumana-isithuba ngezi parameters zilandelayo:

  • Uhlobo lwesicelo: GET
  • URL: ${domain}/posts/${$dynamicVar.postId}

Ukuze siphumeze inyathelo lesibini, kufuneka siqhelane nalo Inkcazo iqhina. Indawo yokuqinisekisa yindawo ekuvumela ukuba ubhale iitshekhi zezicelo ezithile. Indawo nganye yoQinisekiso inokuqulatha iinkcazo ezininzi (iitshekhi). Unokufunda ngakumbi ngazo zonke iintlobo zeengqinisekiso zethu amaxwebhu. Siza kusebenzisa Compare inkcazo ngomsebenzi equal. Kukho iindlela ezininzi zokudala iziqinisekiso:

  1. Inde. Yenza i-Assertion node ngokuzenzela kwimenyu yomxholo ye-RequestStep node. Kwindawo yoQinisekiso eyenziweyo, yongeza uqinisekiso lomdla kwaye ugcwalise imimandla.
  2. Ukukhawuleza. Yenza i-Assertion node kunye ne-assertion evela kwi-RequestStep node impendulo usebenzisa imenyu yomxholo

Masisebenzise indlela yesibini. Oku kuya kujongeka njani kwityala lethu.

TestMace. Ukuqala ngokukhawuleza

Kwabo bangayiqondiyo nantsi into eyenzekayo:

  1. Faka isicelo kwi-node fumana-isithuba
  2. Kwithebhu Icazululiwe phendula, fowunela imenyu yentsingiselo uze ukhethe Yenza inkcazo -> thelekisa -> Equal

Sivuyisana nawe, sidale uvavanyo lwethu lokuqala! Kulula, akunjalo? Ngoku unokuqhuba iskripthi ngokupheleleyo kwaye ujabulele umphumo. Ekuphela kwento eseleyo kukuyihlaziya kancinci kwaye uyikhuphe title kwinguqu eyahlukileyo. Kodwa sizokushiya njengomsebenzi wasekhaya)

isiphelo

Kwesi sikhokelo, senze imeko egcweleyo kwaye kwangaxeshanye sihlolisise ezinye zeempawu zemveliso yethu. Ewe, asizange sisebenzise yonke imisebenzi kwaye kumanqaku alandelayo siza kubonelela ngenkcazo ebanzi yezakhono zeTestMace. Hla umamele!

I-PS Kwabo bavila kakhulu ukuvelisa onke amanyathelo, siye sabhala ngobubele indawo yokugcina ngeprojekthi evela kwinqaku. Ungayivula nge ifayile -> Vula iprojekthi kwaye ukhethe ifolda yeProjekthi.

umthombo: www.habr.com

Yongeza izimvo