Hi uile! An-diugh tha sinn airson ar toradh a thaisbeanadh don phoball IT - IDE airson a bhith ag obair le APIan . Is dòcha gu bheil cuid agaibh eòlach mu ar deidhinn mar-thĂ bho . Ach, cha deach ath-sgrĂšdadh farsaing a dhèanamh air an inneal, agus mar sin bheir sinn aghaidh air aâ ghainnead mhĂŹ-fhortanach seo.

ĐĐžŃиваŃиŃ
Bu mhath leam tòiseachadh le mar, gu dearbh, thĂ inig sinn chun na beatha seo agus chuir sinn romhainn an inneal againn fhèin a chruthachadh airson obair adhartach leis an API. Feuch an tòisich sinn le liosta de ghnĂŹomhachd a bu chòir a bhith aig toradh, agus faodaidh sinn a rĂ dh, nar beachd, gur e âIDE airson a bhith ag obair le APIanâ a thâ ann:
- Aâ cruthachadh agus aâ cur an gnĂŹomh cheistean agus sgriobtaichean (sreathan cheistean)
- A 'sgrÏobhadh diofar sheòrsaichean de dheuchainnean
- Ginealach deuchainn
- Ag obair le tuairisgeulan API, aâ toirt a-steach toirt a-steach bho chruthan leithid Swagger, OpenAPI, WADL, msaa.
- Aâ magadh air iarrtasan
- Taic mhath airson aon chĂ nan no barrachd airson sgriobtaichean a sgrĂŹobhadh, aâ gabhail a-steach amalachadh le leabharlannan mòr-chòrdte
- agus mar sin air adhart.
Faodar an liosta a leudachadh gus freagairt air do bhlas. A bharrachd air an sin, tha e cudromach chan e a-mhĂ in an IDE fhèin a chruthachadh, ach cuideachd bun-structar sònraichte, leithid sioncronadh sgòthan, innealan loidhne-Ă ithne, seirbheis sgrĂšdaidh air-loidhne, msaa. Aig a âcheann thall, tha gluasadan nam bliadhnachan mu dheireadh ag òrdachadh dhuinn chan ann a-mhĂ in gnĂŹomhachd cumhachdach an tagraidh, ach cuideachd an eadar-aghaidh tlachdmhor aige.
Cò a tha feumach air inneal mar seo? Gu dearbh, tha a h-uile duine aig a bheil co-dhiĂš dòigh air choireigin co-cheangailte ri leasachadh agus deuchainn APIn nan luchd-leasachaidh agus nan luchd-dearbhaidh =). A bharrachd air an sin, ma tha e gu tric gu leòr airson a âchiad fhear ceistean singilte agus sgriobtaichean sĂŹmplidh a chuir an gnĂŹomh, an uairsin airson luchd-dearbhaidh is e seo aon de na prĂŹomh innealan, a bu chòir, am measg rudan eile, inneal cumhachdach a ghabhail a-steach airson deuchainnean a sgrĂŹobhadh leis aâ chomas an ruith a-steach. CI.
Mar sin, aâ leantainn an stiĂširidh seo, thòisich sinn air ar toradh a chruthachadh. ChĂŹ sinn na tha sinn air a choileanadh aig an ĂŹre seo.
Tòiseachadh luath
Feuch an tòisich sinn leis aâ chiad eòlas air an tagradh. Faodaidh tu a luchdachadh sĂŹos . Aig an Ă m seo, tha na 3 prĂŹomh Ă rd-Ăšrlaran aâ faighinn taic - Windows, Linux, MacOS. Luchdaich sĂŹos, stĂ laich, cuir air bhog. Nuair a chuireas tu air bhog e airson aâ chiad uair, is dòcha gum faic thu an uinneag a leanas:

Cliog air an soidhne plus aig mullach an raon susbaint gus aâ chiad iarrtas agad a chruthachadh. Tha an taba ceist aâ coimhead mar seo:

Bheir sinn sĂšil nas mionaidiche air. Tha an eadar-aghaidh iarrtas glè choltach ris an eadar-aghaidh de luchd-dèiligidh fois mòr-chòrdte, a tha ga dhèanamh nas fhasa imrich bho innealan coltach ris. NĂŹ sinn aâ chiad iarrtas chun url

San fharsaingeachd, aig a 'chiad sealladh, chan eil am pannal freagairt cuideachd a' tilgeil iongnadh sam bith. Ach, bu mhath leam dâ aire a tharraing gu cuid de phuingean:
- Tha corp an fhreagairt air a riochdachadh ann an cruth craoibhe, a tha an-toiseach a 'cur susbaint fiosrachaidh ris agus san dĂ rna Ă ite a' toirt cothrom dhut cuid de fheartan inntinneach a chur ris gu h-ĂŹosal.
- Tha tab Assertions ann, a sheallas liosta de dheuchainnean airson iarrtas sònraichte
Mar a chĂŹ thu, faodar an inneal againn a chleachdadh mar neach-dèiligidh fois goireasach. Ach, cha bhiodh sinn an seo nam biodh na comasan aige cuingealaichte ri bhith aâ cur iarrtasan a-mhĂ in. An uairsin, bheir mi cunntas air na bun-bheachdan bunaiteach agus gnĂŹomhachd TestMace.
Bun-bheachdan agus Feartan
Snaidhm
Tha gnÏomhachd TestMace air a roinn ann an diofar sheòrsaichean nodan. Anns an eisimpleir gu h-à rd, sheall sinn obrachadh an nód RequestStep. Ach, tha na seòrsaichean nodan a leanas a-nis rim faighinn san tagradh:
- Ceum Iarr. Is e seo an nĂłd tron ââââurrainn dhut iarrtas a chruthachadh. Chan fhaod ach aon nòta Dearbhaidh a bhith aige mar eileamaid cloinne.
- Dearbhadh. Tha an nĂłd air a chleachdadh airson deuchainnean a sgrĂŹobhadh. Chan urrainn dha a bhith ach na nĂłd cloinne den nĂłd RequestStep.
- Fillte. Aâ leigeil leat nodan Folder agus RequestStep a chuir còmhla annta fhèin.
- Pròiseact. Is e seo an nód freumh, a chaidh a chruthachadh gu fèin-ghluasadach nuair a thèid am pròiseact a chruthachadh. Rud eile, bidh e ag ath-aithris gnÏomhachd an nód Folder.
- Ceangal. Ceangal ris an fhaidhle Folder no RequestStep. Aâ leigeil leat ceistean agus sgriobtaichean ath-chleachdadh.
- agus mar sin air adhart.
Tha na nodan suidhichte ann an sgrĂŹoban (am pannal aig aâ bhonn air an taobh chlĂŹ, air a chleachdadh airson ceistean âaon-uairâ a chruthachadh gu sgiobalta) agus ann am pròiseactan (am pannal gu h-Ă rd air an taobh chlĂŹ), air am bi sinn aâ fuireach nas mionaidiche.
Am pròiseact
Nuair a chuireas tu an tagradh air bhog, is dòcha gum mothaich thu loidhne Pròiseact singilte san oisean gu h-Ă rd air an taobh chlĂŹ. Is e seo bunait craobh aâ phròiseict. Nuair a thòisicheas tu air pròiseact, thèid pròiseact sealach a chruthachadh, air am bi an t-slighe an urra ris an t-siostam obrachaidh agad. Aig Ă m sam bith faodaidh tu am pròiseact a ghluasad gu Ă ite a tha iomchaidh dhut.
Is e prĂŹomh adhbhar aâ phròiseict an comas leasachaidhean a shĂ bhaladh san t-siostam faidhle agus an sioncronachadh tuilleadh tro shiostaman smachd dreach, ruith sgriobtaichean ann an CI, ath-sgrĂšdadh atharrachaidhean, msaa.
Caochlaidhean
Is e caochladairean aon de na prĂŹomh dhòighean ann an tagradh. Is dòcha gu bheil beachd aig an fheadhainn agaibhse a tha ag obair le innealan mar TestMace air na tha sinn aâ bruidhinn. Mar sin, tha caochladairean mar dhòigh air dĂ ta cumanta a stòradh agus conaltradh eadar nodan. Tha analog, mar eisimpleir, nan caochladairean Ă rainneachd ann am Postman no Insomnia. Ach, chaidh sinn nas fhaide agus leasaich sinn aâ chuspair. Ann an TestMace, faodar caochladairean a shuidheachadh aig ĂŹre an nĂłd. Sam bith. Tha dòigh ann cuideachd airson caochladairean fhaighinn bho shinnsirean agus caochladairean a tha aâ dol thairis air sliochd. A bharrachd air an sin tha grunn chaochladairean togte ann, tha ainmean nan caochladairean togte aâ tòiseachadh le $. Seo cuid dhiubh:
$prevStep- ceangal ri caochladairean an nĂłd roimhe$nextStep- ceangal ri caochladairean an ath nĂłd$parent- an aon rud, ach a-mhĂ in airson an sinnsear$response- freagairt bhon fhrithealaiche$env- caochladairean Ă rainneachd gnĂ thach$dynamicVar- caochladairean fiĂšghantach a chaidh a chruthachadh aig Ă m cur an gnĂŹomh sgriobt no ceist
$env - tha iad sin gu Ïre mhòr nan caochladairean Ïre nodan pròiseict à bhaisteach, ge-tà , bidh an seata de chaochladairean à rainneachd ag atharrachadh a rèir na h-à rainneachd taghte.
Gheibhear a-steach don chaochladair tro ${variable_name}
Faodaidh luach caochladair a bhith caochlaideach eile, no eadhon abairt slĂ n. Mar eisimpleir, faodaidh an caochladair url a bhith mar abairt mar
http://${host}:${port}/${endpoint}.
Air leth, is fhiach a bhith mothachail gu bheil e comasach caochladairean a shònrachadh rè coileanadh sgriobt. Mar eisimpleir, gu tric feumar dĂ ta ceadachaidh a shĂ bhaladh (token no an bann-cinn slĂ n) a thĂ inig bhon t-seirbheisiche Ă s deidh logadh a-steach soirbheachail. Leigidh TestMace leat an dĂ ta sin a shĂ bhaladh gu caochladairean fiĂšghantach aon de na sinnsearan. Gus tubaistean a sheachnadh le caochladairean âstatachâ a thâ ann mar-thĂ , tha caochladairean fiĂšghantach air an cur ann an nĂŹ air leth $dynamicVar.
Seallaidhean
Aâ cleachdadh na feartan gu h-Ă rd, faodaidh tu sgriobtaichean ceiste slĂ n a ruith. Mar eisimpleir, cruthachadh eintiteas -> aâ ceasnachadh eintiteas -> aâ cuir Ă s do eintiteas. Anns a âchĂšis seo, mar eisimpleir, faodaidh tu an nĂłd Folder a chleachdadh gus grunn nodan RequestStep a chuir còmhla.
Auto-chrĂŹochnachadh agus soilleireachadh faireachdainn
Airson obair goireasach le caochladairean (agus chan ann a-mhĂ in) tha feum air fèin-chrĂŹochnachadh. Agus gu dearbh, aâ soilleireachadh luach abairt gus a dhèanamh nas fhasa agus nas goireasaiche soilleireachadh cò ris a tha caochladair sònraichte co-ionann. Tha seo fĂŹor nuair a tha e nas fheĂ rr aon uair fhaicinn na bhith aâ cluinntinn ceud uair:

Is fhiach a bhith mothachail gu bheil fèin-choileanadh air a chuir an gnĂŹomh chan ann a-mhĂ in airson caochladairean, ach cuideachd, mar eisimpleir, airson bannan-cinn, luachan cinn sònraichte (mar eisimpleir, fèin-chrĂŹochnachadh airson bann-cinn susbaint-seòrsa), protocolaidhean agus mòran a bharrachd. Tha an liosta air Ăšrachadh gu cunbhalach mar a bhios an tagradh aâ fĂ s.
Dèan à s/ath-dhèanamh
Is e rud gu math goireasach a thâ ann a bhith aâ cuir Ă s / ag ath-dhèanamh atharrachaidhean, ach airson adhbhar air choireigin chan eil e air a chuir an gnĂŹomh anns a h-uile Ă ite (agus chan eil innealan airson obrachadh le APIan mar eisgeachd). Ach chan e sinne aon dhiubh sin!) Tha sinn air undo/ath-dhèanamh a chuir an gnĂŹomh air feadh aâ phròiseict gu lèir, a leigeas leat chan ann a-mhĂ in deasachadh nòta sònraichte a thoirt air falbh, ach cuideachd a chruthachadh, a dhubhadh Ă s, a ghluasad, msaa. Feumaidh na gnĂŹomhan as cudromaiche dearbhadh.
A 'cruthachadh deuchainnean
Tha uallach air an nĂłd Assertion airson deuchainnean a chruthachadh. Is e aon de na prĂŹomh fheartan an comas deuchainnean a chruthachadh gun phrògramadh, aâ cleachdadh luchd-deasachaidh togte.
Tha nód Dearbhaidh air a dhèanamh suas de sheata de dhearbhaidhean. Tha a sheòrsa fhèin aig gach tagradh; aig an à m seo tha grunn sheòrsaichean dearbhaidhean ann
Dèan coimeas eadar luachan - dÏreach dèan coimeas eadar 2 luachan. Tha grunn ghnÏomhaichean coimeas ann: co-ionann, gun a bhith co-ionann, nas motha na, nas motha na no co-ionann ri, nas lugha na, nas lugha na no co-ionann.
Aâ toirt a-steach luach - aâ sgrĂšdadh tachartas fo-thalamh ann an sreang.
XPath - aâ dèanamh cinnteach gu bheil luach sònraichte aig an roghnaichear ann an XML.
Is e sgriobt javascript neo-riaghailteach a thâ ann an dearbhadh JavaScript a thilleas fĂŹor mu shoirbheachas agus meallta air fĂ iligeadh.
Tha mi aâ toirt fa-near nach fheum ach an tè mu dheireadh sgilean prògramaidh bhon neach-cleachdaidh, tha na 3 dearbhaidhean eile air an cruthachadh aâ cleachdadh eadar-aghaidh grafaigeach. Seo, mar eisimpleir, cò ris a tha an còmhradh airson dearbhadh luachan coimeas a chruthachadh coltach:

Is e an icing air aâ chèic cruthachadh luath de dhearbhaidhean bho fhreagairtean, dĂŹreach thoir sĂšil air!

Ach, tha crĂŹochan follaiseach aig dearbhaidhean mar seo, agus dhâ fhaodadh gum biodh tu airson tagradh javascript a chleachdadh airson faighinn seachad air. Agus an seo tha TestMace cuideachd aâ toirt seachad Ă rainneachd chofhurtail le fèin-chrĂŹochnachadh, soilleireachadh co-chòrdadh agus eadhon anailisiche statach.
Tuairisgeul API
Leigidh TestMace leat chan ann a-mhĂ in an API a chleachdadh, ach cuideachd airson a chlĂ radh. A bharrachd air an sin, tha structar rangachd aig an tuairisgeul fhèin agus tha e aâ freagairt gu h-organach ris aâ chòrr den phròiseact. A bharrachd air an sin, tha e comasach an-drĂ sta tuairisgeulan API a thoirt a-steach bho chruthan Swagger 2.0 / OpenAPI 3.0. Chan e a-mhĂ in gu bheil an tuairisgeul fhèin a âlaighe cuideam marbh, ach tha e ceangailte gu dlĂšth ris aâ chòrr den phròiseact, gu sònraichte, tha fèin-chrĂŹochnachadh URLan, cinn HTTP, paramadairean ceist, msaa ri fhaighinn, agus san Ă m ri teachd tha sinn an dĂšil deuchainnean a chuir ris. airson gèilleadh don fhreagairt leis an tuairisgeul API.
A 'roinneadh nod
CĂšis: bu mhath leat iarrtas trioblaideach no eadhon sgriobt slĂ n a cho-roinn le co-obraiche no dĂŹreach a cheangal ri biast. Tha TestMace aâ còmhdach na cĂšise seo cuideachd: leigidh an aplacaid leat nĂłd sam bith agus eadhon fo-chraobh ann an URL a sheòladh. Dèan lethbhreac-paste agus is urrainn dhut an t-iarrtas a ghluasad gu inneal no pròiseact eile gu furasta.
Cruth stòraidh pròiseict a ghabhas leughadh le daoine
Aig an à m seo, tha gach nód air a stòradh ann am faidhle air leth leis an leudachadh yml (mar a tha fÏor leis an nód Assertion), no ann am pasgan le ainm an nód agus am faidhle index.yml ann.
Mar eisimpleir, seo mar a tha am faidhle iarrtais a rinn sinn san ath-sgrĂšdadh gu h-Ă rd coltach:
clĂ r-amais.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 1Mar a chĂŹ thu, tha a h-uile dad gu math soilleir. Ma thogras tu, faodar an cruth seo a dheasachadh le lĂ imh gu furasta.
Bidh rangachd phasganan san t-siostam faidhle gu tur ag ath-aithris rangachd nodan sa phròiseact. Mar eisimpleir, sgriobt mar:

Aâ mapadh an t-siostam faidhle chun structar a leanas (chan eil ach rangachd nam pasgan air a shealltainn, ach tha brĂŹgh soilleir)

NÏ seo am pròiseas ath-bhreithneachaidh pròiseict nas fhasa.
In-mhalairt bho Postman
Ăs deidh dhaibh na tha gu h-Ă rd a leughadh, bidh cuid de luchd-cleachdaidh airson feuchainn (ceart?) toradh Ăšr no (rud nach eil an ifrinn aâ magadh!) A chleachdadh gu tur sa phròiseact aca. Ach, faodar stad a chuir air imrich le Ă ireamh mhòr de leasachaidhean anns an aon Postman. Airson leithid de chĂšisean, tha TestMace aâ toirt taic do bhith aâ toirt a-steach cruinneachaidhean bho Postman. Aig an Ă m seo, thathas aâ toirt taic do in-mhalairt Ă s aonais deuchainnean, ach chan eil sinn aâ diĂšltadh taic a thoirt dhaibh san Ă m ri teachd.
Planaichean
Tha mi an dòchas gun do chòrd an toradh againn ri mòran den fheadhainn a leugh suas chun na h-ĂŹre seo. Ach, chan e sin uile! Tha obair air an toradh fo lĂ n ghluasad agus seo cuid de fheartan a tha sinn an dĂšil a chuir ris a dhâ aithghearr.
Geama sinchronizacy
Aon de na feartan as mòr-chòrdte. Aig an à m seo, tha sinn a 'moladh a bhith a' cleachdadh siostaman smachd dreach airson sioncronadh, airson a bheil sinn a 'dèanamh an cruth nas cà irdeile airson an seòrsa stòraidh seo. Ach, chan eil an sruth-obrach seo freagarrach don h-uile duine, agus mar sin tha sinn an dÚil inneal sioncronaidh a chuir ris air a bheil mòran eòlach tro na frithealaichean againn.
CLI
Mar a chaidh ainmeachadh gu h-à rd, chan urrainn dha toraidhean Ïre IDE a dhèanamh às aonais a h-uile seòrsa de aonachadh le tagraidhean no sruthan-obrach a tha ann mar-thà . Is e an CLI dÏreach a tha a dhÏth gus deuchainnean sgrÏobhte ann an TestMace fhilleadh a-steach don phròiseas amalachaidh leantainneach. Tha obair air an CLI aig Ïre là n; cuiridh dreachan trà th am pròiseact air bhog le aithisg tòcan sÏmplidh. San à m ri teachd tha sinn an dÚil toradh aithisg a chur ris ann an cruth JUnit.
Plugin siostam
A dhâ aindeoin cumhachd an inneil againn, tha an t-seata de chĂšisean a dhâ fheumas fuasglaidhean gun chrĂŹoch. Ăs deidh na h-uile, tha gnĂŹomhan ann a tha sònraichte do phròiseact sònraichte. Sin as coireach gu bheil sinn an dĂšil SDK a chuir ris san Ă m ri teachd airson plugins a leasachadh agus bidh e comasach dha gach leasaiche comas-gnĂŹomh a chuir ris a âcòrdadh riutha.
Leudachadh air an raon de sheòrsan nodan
Chan eil an seata nodan seo aâ còmhdach a h-uile cĂšis a dhâ fheumas an neach-cleachdaidh. Nòtaichean a thathar an dĂšil a chur ris:
- Nod sgriobt - ag atharrachadh agus a 'cur dĂ ta a' cleachdadh js agus an API co-fhreagarrach. Aâ cleachdadh an seòrsa nòta seo, faodaidh tu rudan a dhèanamh mar sgriobtaichean ro-iarrtas agus iar-iarrtas ann am Postman.
- nĂłd GraphQL - taic graphql
- Nód dearbhaidh gnà thaichte - leigidh sin leat an seata de dhearbhaidhean a tha sa phròiseact a leudachadh
Gu nà darra, chan e liosta dheireannach a tha seo; thèid Úrachadh gu cunbhalach air sgà th, am measg rudan eile, do bheachdan air ais.
CĂBHA
Ciamar a tha thu eadar-dhealaichte bho Postman?
- Bun-bheachd nodan, a leigeas leat gnĂŹomhachd a âphròiseict a mheudachadh cha mhòr gun chrĂŹoch
- Cruth pròiseict a ghabhas leughadh le daoine le bhith ga shĂ bhaladh ann an siostam faidhle, a bhios aâ sĂŹmpleachadh obair le bhith aâ cleachdadh siostaman smachd dreach
- Comas deuchainnean a chruthachadh gun phrògramadh agus taic js nas adhartaiche anns an deasaiche deuchainn (fèin-chrÏochnachadh, anailisiche statach)
- Auto-chrĂŹochnachadh adhartach agus soilleireachadh air luach lĂ ithreach chaochladairean
An e toradh stòr fosgailte a tha seo?
Chan e, an-drà sta tha na stòran dÚinte, ach san à m ri teachd tha sinn a 'beachdachadh air comasachd na stòran fhosgladh
Dè tha thu a' fuireach dheth?)
Còmhla ris an dreach an-asgaidh, tha sinn an dĂšil dreach pĂ ighte den toradh a leigeil ma sgaoil. Bidh e gu sònraichte aâ toirt a-steach rudan a dhâ fheumas taobh frithealaiche, mar eisimpleir, sioncronadh.
co-dhĂšnadh
Tha am pròiseact againn aâ gluasad le leuman is chrĂŹochan a dhâionnsaigh foillseachadh seasmhach. Ach, faodar an toradh a chleachdadh mar-thĂ , agus tha fios air ais adhartach ar luchd-cleachdaidh trĂ th na dhearbhadh air seo. Bidh sinn gu gnĂŹomhach aâ cruinneachadh fios air ais, oir Ă s aonais co-obrachadh dlĂšth leis aâ choimhearsnachd tha e do-dhèanta inneal math a thogail. Gheibh thu sinn an seo:
Tha sinn aâ coimhead air adhart ri ur miannan agus molaidhean!
Source: www.habr.com
