I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Molweni nonke! Namhlanje sifuna ukubonisa kuluntu lwe-IT imveliso yethu - i-IDE yokusebenza kunye ne-API TestMace. Mhlawumbi abanye benu sele besazi ngathi amanqaku angaphambili. Nangona kunjalo, bekungekho uphononongo olubanzi lwesixhobo, ke siyasisusa esi siphene sicaphukisayo.

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Isizathu

Ndingathanda ukuqala ngendlela, eneneni, sifike kubomi obunjalo kwaye sagqiba ekubeni sifake isixhobo sethu somsebenzi ophambili nge-API. Masiqale ngoluhlu lweempawu ekufuneka imveliso ibenazo, ezo, ngokoluvo lwethu, inokubizwa ngokuba "yi-IDE yokusebenza ngee-APIs":

  • Yenza kwaye uphumeze imibuzo kunye nezikripthi (ulandelelwano lwemibuzo)
  • Ukubhala iintlobo ngeentlobo zovavanyo
  • Ukuveliswa kovavanyo
  • Ukusebenza ngenkcazo ye-API, kubandakanywa ukungenisa kwiifomathi ezifana ne-Swagger, i-OpenAPI, i-WADL, njl.
  • Isicelo sokuhlekisa
  • Inkxaso elungileyo yolwimi olunye okanye ezininzi zokubhala, kuquka nokudityaniswa namathala eencwadi adumileyo
  • njalo njalo.

Uluhlu lunokuncedisa ukunambitha. Ngaphezu koko, kubalulekile ukudala kungekhona kuphela i-IDE ngokwayo, kodwa kunye neziseko ezithile, ezifana nokuvumelanisa ifu, izixhobo zomyalelo womyalelo, inkonzo yokubeka iliso kwi-intanethi, njl. Ekugqibeleni, iintsingiselo zeminyaka yamva nje zisiyalela kungekuphela nje ukusebenza okunamandla kwesicelo, kodwa kunye nembonakalo yayo emnandi.

Ngubani ofuna isixhobo esinjalo? Ngokucacileyo, bonke abo badityaniswe ngandlela thile nophuhliso kunye novavanyo lwe-API ngabaphuhlisi kunye nabavavanyi =). Ngaphezu koko, ukuba okokuqala kudla ngokwaneleyo ukwenza izicelo ezilodwa kunye nemibhalo elula, ke kubavavanyi le sesinye sezixhobo eziphambili, ezithi, phakathi kwezinye izinto, zibandakanye indlela enamandla yokubhala iimvavanyo ezikwaziyo ukuziqhuba. CI.

Ke, ngokulandela ezi zikhokelo, saqala ukwenza imveliso yethu. Makhe sibone ukuba sifumene ntoni kweli nqanaba.

Ukuqala ngokukhawuleza

Masiqale ngokuqhelana nesicelo. Ungayikhuphela kwiwebhusayithi yethu. Okwangoku, zonke iiplatifti ezinkulu ezi-3 zixhaswa - Windows, Linux, MacOS. Khuphela, faka, qhuba. Xa uqala okokuqala unokubona le festile ilandelayo:

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Cofa kuphawu lokudibanisa phezulu kwindawo yomxholo ukwenza isicelo sakho sokuqala. Umbuzo wesithuba ujongeka ngolu hlobo:

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Makhe sigxininise kuyo ngokweenkcukacha ngakumbi. Ujongano lwesicelo lufana kakhulu nojongano lwabaxumi abadumileyo bokuphumla, okwenza kube lula ukufuduka kwizixhobo ezinjalo. Masenze isicelo sokuqala kwi-url https://next.json-generator.com/api/json/get/NJv-NT-U8

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Ngokubanzi, ekuboneni kokuqala, iphaneli yokuphendula nayo ayiphosi nayiphi na into emangalisayo. Nangona kunjalo, ndiza kutsala ingqalelo yakho kwezinye iingongoma:

  1. Umzimba wokuphendula unikezelwa ngendlela yomthi, okokuqala, wongeza umxholo wolwazi kwaye, okwesibini, ikuvumela ukuba ungeze ezinye izinto ezinomdla, ezichazwe ngezantsi.
  2. Kukho i-Assertions tab ebonisa uluhlu lovavanyo lwesicelo esinikiweyo

Njengoko ubona, isixhobo sethu sinokusetyenziswa njengomthengi ofanelekileyo wokuphumla. Nangona kunjalo, ngesingazange sihlanganisene apha ukuba amandla ayo aphelele ekuthumeleni izicelo kuphela. Okulandelayo, ndiza kuchaza iikhonsepthi ezisisiseko kunye nokusebenza kweTestMace.

Iingcamango ezisisiseko kunye neempawu

Knot

Ukusebenza kweTestMace kwahlulwe kwiindidi ezahlukeneyo zeendawo. Kulo mzekelo ungasentla, sibonise ukusebenza kwe-RequestStep node. Nangona kunjalo, ezi ntlobo ze-node zilandelayo ziyafumaneka ngoku kwisicelo:

  • Cela iNyathelo. Le yindawo onokuthi wenze ngayo isicelo. Inokuba nendawo enye kuphela yoQinisekiso njengento yomntwana.
  • inkcazo. I-Node isetyenziselwa ukubhala iimvavanyo. Inokuba yindawo yomntwana kuphela ye-RequestStep node.
  • Isiqulathi seefayili. Ikuvumela ukuba wenze iqela leFolda kunye ne-RequestStep nodes ngaphakathi kwakho.
  • iprojekthi. Le yingcambu yengcambu, eyenziwe ngokuzenzekelayo xa iprojekthi yenziwe. Intsalela iphinda umsebenzi we-Folder node.
  • Ikhonkco. Ikhonkco kwisiqulathi seefayili okanye kwiNodi yeSicelo. Ikuvumela ukuba usebenzise kwakhona imibuzo kunye nezikripthi.
  • njalo njalo.

Iingqungquthela zifumaneka kwimikrwelo (iphaneli engezantsi ngasekhohlo, isetyenziselwa ukudala ngokukhawuleza izicelo "zexesha elinye" kunye neprojekthi (iphaneli ephezulu ngasekhohlo), esiya kuhlala kuyo ngokubanzi.

Le projekthi

Xa uqalisa usetyenziso, usenokuba uqaphele umgca omnye weProjekthi kwikona ephezulu ngasekhohlo. Le yingcambu yomthi weprojekthi. Xa uqhuba iprojekthi, iprojekthi yethutyana yenziwe, indlela eya kuyo ixhomekeke kwindlela yakho yokusebenza. Ngaliphi na ixesha, ungahambisa iprojekthi kwindawo ekulungele wena.

Injongo ephambili yeprojekthi kukukwazi ukugcina uphuhliso kwinkqubo yefayile kunye nokuvumelanisa ngakumbi ngokusebenzisa iinkqubo zokulawula iinguqulelo, ukuqhuba izikripthi kwi-CI, ukuphonononga utshintsho, njl.

Izinto eziguquguqukayo

Uguquguquko yenye yeendlela eziphambili zesicelo. Abo kuni basebenza ngezixhobo ezifana neTestMace basenokuba sele beyazi le nto ndithetha ngayo. Ke, iinguqu ziyindlela yokugcina idatha eqhelekileyo kunye nonxibelelwano phakathi kweenodi. I-analogue, umzekelo, ziinguqu zemo engqongileyo kwi-Postman okanye i-Insomnia. Noko ke, siye saya phambili saza sawuphuhlisa umxholo. Kwi-TestMace, iinguqu zinokusetwa kwinqanaba le-node. Nayiphi na. Kukwakho nendlela yokufumana izinto eziguquguqukayo kwizinyanya kunye nokutshintshatshintshana kwinzala. Ukongezelela, kukho inani lezinto eziguquguqukayo ezakhelwe ngaphakathi, amagama eenguqu ezakhelwe ngaphakathi ziqala $. Nazi ezinye zazo:

  • $prevStep β€” ireferensi kwizinto eziguquguqukayo zenode yangaphambili
  • $nextStep - ireferensi kwizinto eziguquguqukayo zenodi elandelayo
  • $parent - efanayo, kodwa kuphela ukhokho
  • $response - impendulo evela kumncedisi
  • $env - iinguqu zangoku zokusingqongileyo
  • $dynamicVar - iinguqu eziguquguqukayo ezenziwe ngexesha lokubhalwa kweskripthi okanye umbuzo

$env - ezi zizinto eziguquguqukayo eziqhelekileyo zenqanaba lendawo yeProjekthi, nangona kunjalo, iseti yeenguqu zemo engqongileyo iyahluka ngokuxhomekeke kwimeko ekhethiweyo.

Uguqulo lufikelelwa nge ${variable_name}
Ixabiso loguqulo lunokuba lolunye uguqulo, okanye nokuba yintetho epheleleyo. Umzekelo, ulwahlulo lwe-url lunokuba luphawu olunje
http://${host}:${port}/${endpoint}.

Ngokwahlukileyo, kufanelekile ukuqaphela ukuba kunokwenzeka ukwabela izinto ezahlukeneyo ngexesha lokwenziwa kwescript. Ngokomzekelo, kudla ngokuba yimfuneko ukugcina idatha yogunyaziso (umqondiso okanye yonke i-header) evela kumncedisi emva kokungena ngempumelelo. I-TestMace ikuvumela ukuba ugcine idatha enjalo kwiinguqu eziguquguqukayo zomnye wezinyanya. Ukuze uthintele ukungqubana nezinto esele zikhona "ezisisigxina", iinguqu eziguquguqukayo zibekwe kwinto eyahlukileyo $dynamicVar.

Iimeko

Usebenzisa zonke ezi mpawu zingentla, ungenza yonke imibuzo yescripts. Umzekelo, ukwenza iqumrhu -> ukucela iqumrhu -> ukucima iqumrhu. Kule meko, umzekelo, ungasebenzisa indawo yolawulo ukwenza iqela iinodi ezininzi zeRequestStep.

Ukugqitywa kovakaliso kunye nokuqaqambisa

Ngomsebenzi ofanelekileyo kunye nezinto eziguquguqukayo (kwaye kungekhona kuphela), ukugqiba ngokuzenzekelayo kuyimfuneko. Kwaye kunjalo, ukuqaqambisa ixabiso lentetho, ukuze kube lula kwaye kube lula ukucacisa ukuba le nto okanye loo mahluko alingana nawo. Nantsi imeko xa kungcono ukubona kube kanye kunokuva kalikhulu:

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Kuyaphawuleka ukuba ukugqibezela okuzenzekelayo akuphunyezwanga kuphela kwizinto eziguquguqukayo, kodwa kwakhona, umzekelo, kwiiheader, amaxabiso eeheader ezithile (umzekelo, ukugqibezela okuzenzekelayo koMxholo-uHlobo lwesihloko), iiprothokholi, nokunye okuninzi. Uluhlu luhlaziywa rhoqo ngokukhula kwesicelo.

hlehlisa/yenza kwakhona

Hlehlisa / uphinde wenze utshintsho yinto elula kakhulu, kodwa ngesizathu esithile ayiphunyezwa yonke indawo (kwaye izixhobo ze-API azikho ngaphandle). Kodwa asiyiyo enye yezo!) Ukuhlehlisa / ukuphinda kuphunyezwe ngaphakathi kwesakhelo seprojekthi yonke, esivumela ukuba singahlehlisi nje ukuhlela i-node ethile, kodwa nokudalwa kwayo, ukucima, ukunyakaza, njl. Eyona misebenzi ibalulekileyo ifuna isiqinisekiso.

Ukudala iimvavanyo

I-Assertion node inoxanduva lokudala iimvavanyo. Enye yeempawu eziphambili kukukwazi ukwenza iimvavanyo ngaphandle kweprogram, usebenzisa abahleli abakhelwe ngaphakathi.

I-Assertion node ineseti yee-assertion (iingxelo). Ubango ngalunye lunodidi lwalo, okwangoku kukho iindidi ezininzi zeengqinisekiso

  1. Thelekisa amaxabiso- thelekisa amaxabiso ama-2. Kukho abasebenzi abaninzi bothelekiso abalinganayo, abangalinganiyo, abakhulu kuno, abakhulu kuno okanye abalingana no, ngaphantsi, ngaphantsi, ngaphantsi okanye ukulingana.

  2. Iqulathe ixabiso - ijonga ukuba umtya osezantsi ukuluhlu lwamagama.

  3. I-XPath - ijonga ukuba umkhethi kwi-XML uqulethe ixabiso elithile.

  4. Ubango lweJavaScript siskripthi sejavascript esingenasizathu esibuyisela inyaniso kwimpumelelo kwaye bubuxoki xa ukusilela.

Ndiyaqaphela ukuba kuphela kweyokugqibela idinga izakhono zokucwangcisa kumsebenzisi, ii-assertation ezi-3 eziseleyo zenziwe kusetyenziswa ujongano lomzobo. Umzekelo, nantsi indlela incoko yababini yokwenza ufaniso lwamaxabiso ajongeka ngathi:

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

I-icing kwikhekhe kukudala ngokukhawuleza kweengxelo ezivela kwimpendulo, jonga nje oku!

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Nangona kunjalo, iziqinisekiso ezinjalo zinemida ecacileyo apho unokusebenzisa iibango ze-javascript. Kwaye apha i-TestMace ikwabonelela ngendawo ekhululekileyo ngokugqitywa ngokuzenzekelayo, ukugqamisa kwe-syntax, kunye nesihlalutyi esimileyo.

API Inkcazelo

I-TestMace ayivumeli kuphela ukusebenzisa i-API, kodwa kwakhona ukuyibhala. Kwangaxeshanye, inkcazo ngokwayo inobume be-hierarchical kunye ne-organically ingena kuyo yonke iprojekthi. Ukongeza, okwangoku kunokwenzeka ukungenisa iinkcazo ze-API ukusuka kwiifomathi ze-Swagger 2.0 / OpenAPI 3.0. Inkcazo ngokwayo abukho nje ubunzima obufileyo, kodwa idityaniswe ngokuqinileyo kunye nayo yonke iprojekthi, ngokukodwa, ukugqitywa ngokuzenzekelayo kwee-urls, iiheader zeHTTP, iiparamitha zemibuzo, kunye nokunye kuyafumaneka, kwaye kwixesha elizayo siceba ukongeza iimvavanyo ukuthelekisa impendulo kwinkcazo ye-API.

Ukwabelana ngeNode

Imeko: ungathanda ukwabelana ngesicelo sengxaki okanye iskripthi esipheleleyo kunye nogxa wakho okanye usincamathele nje kwimpazamo. I-TestMace ikwagubungela le meko: usetyenziso lukuvumela ukuba ulungelelanise nayiphi na i-node kunye nomthi ongaphantsi kwi-url. Kopisha-uncamathisele kwaye sele usidlulisele ngokulula isicelo komnye umatshini okanye iprojekthi.

Ifomati yogcino lweprojekthi efundekayo ngabantu

Okwangoku, i-node nganye igcinwe kwifayile eyahlukileyo kunye nesandiso se-yml (njengakwimeko ye-Assertion node), okanye kwifolda enegama le-node kunye nefayile ye-index.yml kuyo.
Umzekelo, nantsi indlela ifayile enesicelo esenze kuphononongo olungasentla ijongeka ngolu hlobo:

index.yml

children: []
variables: {}
type: RequestStep
assignVariables: []
requestData:
  request:
    method: GET
    url: 'https://next.json-generator.com/api/json/get/NJv-NT-U8'
  headers: []
  disabledInheritedHeaders: []
  params: []
  body:
    type: Json
    jsonBody: ''
    xmlBody: ''
    textBody: ''
    formData: []
    file: ''
    formURLEncoded: []
  strictSSL: Inherit
authData:
  type: inherit
name: Scratch 1

Njengoko ubona, yonke into icacile. Ukuba uyanqweneleka, le fomati ikhululekile ukuyihlela ngesandla.

Uluhlu lweefolda kwisixokelelwano sefayile luphinda ngokupheleleyo ulawulo lweendawo zokuhlala kwiprojekthi. Umzekelo, iskripthi esinje:

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Iimephu kwisixokelelwano sefayile kolu lwakhiwo lulandelayo (kuphela ulawulo lwencwadi ebonisiweyo, kodwa inqaku licacile)

I-TestMace yi-IDE enamandla yokusebenza ngee-APIs

Oku kwenza inkqubo yophononongo lweprojekthi ibe lula.

Thatha ngaphandle kwi-Postman

Emva kokufunda konke oku ngasentla, abanye abasebenzisi baya kufuna ukuzama (kulungile?) Imveliso entsha okanye (yintoni isihogo esingenzi ihlaya!) Ukusebenzisa ngokupheleleyo kwiprojekthi yabo. Nangona kunjalo, ukufuduka kunokupheliswa linani elikhulu lophuhliso kwi-Postman efanayo. Kwiimeko ezinjalo, i-TestMace ixhasa ukuqokelelwa kwempahla evela kwi-Postman. Okwangoku, ukungenisa ngaphandle kweemvavanyo kuxhaswa, kodwa kwixesha elizayo asibandakanyi inkxaso yabo.

Izicwangciso

Ndiyathemba ukuba uninzi lwabo baye bafunda ukuza kuthi ga kweli nqaku bayithandile imveliso yethu. Nangona kunjalo, akuphelelanga apho! Umsebenzi kwimveliso uqhubela phambili kwaye nazi ezinye iimpawu esiceba ukuzongeza kungekudala.

Cloud sync

Enye yezona zinto ziceliwe kakhulu. Okwangoku, sicebisa ukusebenzisa iinkqubo zolawulo lwenguqulelo njengongqamaniso, apho senza ifomathi ilunge ngakumbi kolu hlobo logcino. Nangona kunjalo, oku kuhamba komsebenzi akufanelanga wonke umntu, ngoko ke kucwangciswe ukongeza indlela yongqamaniso eqhelekileyo kwabaninzi ngeeseva zethu.

CLI

Njengoko kukhankanyiwe ngasentla, iimveliso ze-IDE-level azigqibekanga ngaphandle kwazo zonke iintlobo zokudibanisa kunye nezicelo ezikhoyo okanye ukuhamba komsebenzi. I-CLI iyimfuneko efanayo yokudibanisa iimvavanyo ezibhalwe kwi-TestMace kwinkqubo yokudibanisa eqhubekayo. Umsebenzi kwi-CLI ugcwele ngokupheleleyo, kwiinguqulelo zokuqala kuya kubakho ukuqaliswa kweprojekthi kunye nengxelo elula ye-console. Kwixesha elizayo, siceba ukongeza ingxelo kwifomathi yeJUnit.

Inkqubo ye-plugin

Ngaphandle kwamandla esixhobo sethu, isethi yamatyala afuna ukusonjululwa ayinamda. Ekugqibeleni, kukho imisebenzi ethe ngqo kwiprojekthi ethile. Kungenxa yoko le nto kwixesha elizayo siceba ukongeza i-SDK yophuhliso lweplagin kwaye umphuhlisi ngamnye uya kuba nakho ukongeza ukusebenza ekuthandeni kwabo.

Ukwandiswa koluhlu lweentlobo ze-node

Le seti yeendawo zokuhlala ayiquki zonke iimeko ezifunwa ngumsebenzisi. IiNodi ziya kongezwa:

  • I-script node - iguqula kwaye ibeka idatha usebenzisa i-js kunye ne-API ehambelanayo. Ukusebenzisa olu hlobo lwe-node, unokwenza izinto ezifana nesicelo sangaphambili kunye ne-post-request scripts kwi-Postman.
  • I-GraphQL node - inkxaso yegraphql
  • Indawo yokuqinisekisa isiko-iya kukuvumela ukuba wandise iseti yeenkcazo ezikhoyo kwiprojekthi
    Ngokwemvelo, olu ayiloluhlu lokugqibela, luya kuhlaziywa rhoqo ngenxa, kubandakanywa, impendulo yakho.

FAQ

Wahluke njani kuPostman?

  1. Ingqikelelo yeenodi, ekuvumela ukuba ulinganise ngokungenasiphelo ukusebenza kweprojekthi
  2. Ifomati yeprojekthi efundeka ngabantu ngokuyigcina kwinkqubo yefayile, eyenza lula umsebenzi usebenzisa iinkqubo zolawulo lwenguqulelo
  3. Ukukwazi ukwenza iimvavanyo ngaphandle kwenkqubo kunye nenkxaso ye-js ephezulu kumhleli wovavanyo (ukugqitywa ngokuzenzekelayo, uhlalutyi olumileyo)
  4. Ukugqitywa okuzenzekelayo okukwinqanaba eliphezulu kunye nokuqaqambisa ixabiso langoku leenguqu

Ngaba yimveliso yomthombo ovulekileyo?

Hayi, okwangoku imithombo ivaliwe, kodwa kwixesha elizayo siqwalasela ithuba lokuvula imithombo

Uphila ngantoni?

Kanye kunye nenguqulo yamahhala, siceba ukukhulula inguqu ehlawulwayo yemveliso. Iza kubandakanya ikakhulu izinto ezifuna icala lomncedisi, njengongqamaniso.

isiphelo

Iprojekthi yethu ihamba ngokutsiba kunye nemida ukuya ekukhululweni okuzinzileyo. Nangona kunjalo, imveliso inokuthi isetyenziswe, kwaye impendulo enhle evela kubasebenzisi bethu bokuqala iqinisekisa oku. Siqokelela ingxelo ngenkuthalo, kuba ngaphandle kwentsebenziswano esondeleyo noluntu akunakwenzeka ukwakha isixhobo esihle. Ungasifumana apha:

Website esemthethweni

yocingo

Musa

Facebook

Imiba tracker

Sijonge phambili kwiminqweno yakho kunye neengcebiso!

umthombo: www.habr.com

Yongeza izimvo