Molweni nonke! Namhlanje sifuna ukubonisa kuluntu lwe-IT imveliso yethu - i-IDE yokusebenza kunye ne-API
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
Cofa kuphawu lokudibanisa phezulu kwindawo yomxholo ukwenza isicelo sakho sokuqala. Umbuzo wesithuba ujongeka ngolu hlobo:
Makhe sigxininise kuyo ngokweenkcukacha ngakumbi. Ujongano lwesicelo lufana kakhulu nojongano lwabaxumi abadumileyo bokuphumla, okwenza kube lula ukufuduka kwizixhobo ezinjalo. Masenze isicelo sokuqala kwi-url
Ngokubanzi, ekuboneni kokuqala, iphaneli yokuphendula nayo ayiphosi nayiphi na into emangalisayo. Nangona kunjalo, ndiza kutsala ingqalelo yakho kwezinye iingongoma:
- Umzimba wokuphendula unikezelwa ngendlela yomthi, okokuqala, wongeza umxholo wolwazi kwaye, okwesibini, ikuvumela ukuba ungeze ezinye izinto ezinomdla, ezichazwe ngezantsi.
- 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:
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
-
Thelekisa amaxabiso- thelekisa amaxabiso ama-2. Kukho abasebenzi abaninzi bothelekiso abalinganayo, abangalinganiyo, abakhulu kuno, abakhulu kuno okanye abalingana no, ngaphantsi, ngaphantsi, ngaphantsi okanye ukulingana.
-
Iqulathe ixabiso - ijonga ukuba umtya osezantsi ukuluhlu lwamagama.
-
I-XPath - ijonga ukuba umkhethi kwi-XML uqulethe ixabiso elithile.
-
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-icing kwikhekhe kukudala ngokukhawuleza kweengxelo ezivela kwimpendulo, jonga nje oku!
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:
Iimephu kwisixokelelwano sefayile kolu lwakhiwo lulandelayo (kuphela ulawulo lwencwadi ebonisiweyo, kodwa inqaku licacile)
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?
- Ingqikelelo yeenodi, ekuvumela ukuba ulinganise ngokungenasiphelo ukusebenza kweprojekthi
- Ifomati yeprojekthi efundeka ngabantu ngokuyigcina kwinkqubo yefayile, eyenza lula umsebenzi usebenzisa iinkqubo zolawulo lwenguqulelo
- Ukukwazi ukwenza iimvavanyo ngaphandle kwenkqubo kunye nenkxaso ye-js ephezulu kumhleli wovavanyo (ukugqitywa ngokuzenzekelayo, uhlalutyi olumileyo)
- 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:
Sijonge phambili kwiminqweno yakho kunye neengcebiso!
umthombo: www.habr.com