TestMace - he IDE ikaika no ka hana pū me nā API

Aloha kākou! I kēia lā makemake mākou e hōʻike i ka lehulehu IT i kā mākou huahana - he IDE no ka hana ʻana me nā API TestMace. Ua ʻike mua paha kekahi o ʻoukou e pili ana iā mākou mai nā ʻatikala ma mua. Eia naʻe, ʻaʻohe loiloi piha o ka hāmeʻa, no laila ke kamaʻilio nei mākou i kēia hemahema pōʻino.

TestMace - he IDE ikaika no ka hana pū me nā API

Hoʻokumu

Makemake wau e hoʻomaka me pehea, ʻoiaʻiʻo, ua hiki mai mākou i kēia ola a hoʻoholo e hana i kā mākou mea hana ponoʻī no ka hana holomua me ka API. E hoʻomaka me kahi papa inoa o nā hana e pono ai ka huahana, e pili ana i ko mākou manaʻo, hiki iā mākou ke ʻōlelo he "IDE no ka hana ʻana me nā API":

  • Ka hana ʻana a me ka hoʻokō ʻana i nā nīnau a me nā palapala (sequences of queries)
  • Ke kākau ʻana i nā ʻano hoʻokolohua like ʻole
  • Hanau hoao
  • Ke hana nei me nā wehewehe API, me ka lawe ʻana mai i nā ʻano like me Swagger, OpenAPI, WADL, etc.
  • Noi hoohenehene
  • Kākoʻo maikaʻi no hoʻokahi a ʻoi aku paha nā ʻōlelo no ke kākau ʻana i nā palapala, me ka hoʻohui pū ʻana me nā hale waihona puke kaulana
  • a pēlā aku nō.

Hiki ke hoʻonui ʻia ka papa inoa e kūpono i kou ʻono. Eia kekahi, he mea nui ka hana ʻana ʻaʻole wale i ka IDE ponoʻī, akā i kekahi ʻano hana, e like me ka synchronization kapua, nā mea hana laina kauoha, ka lawelawe nānā pūnaewele, etc. I ka hopena, ʻo nā hiʻohiʻona o nā makahiki i hala iho nei e kuhikuhi iā mākou ʻaʻole wale i ka hana ikaika o ka noi, akā ʻo kona ʻoluʻolu hoʻi.

ʻO wai ka mea e pono ai ia mea hana? ʻIke loa, ʻo ka poʻe a pau e pili ana i ka hoʻomohala ʻana a me ka hoʻāʻo ʻana o nā API he mau mea hoʻomohala a me nā mea hōʻike =). Eia kekahi, inā no ka mea mua i lawa pinepine i ka hoʻokō ʻana i nā nīnau hoʻokahi a me nā palapala maʻalahi, a laila no nā mea hōʻike ʻo ia kekahi o nā mea hana nui, a me nā mea ʻē aʻe, pono e hoʻokomo i kahi mīkini ikaika no ka kākau ʻana i nā hoʻokolohua me ka hiki ke holo iā lākou i loko. CI.

No laila, ma muli o kēia mau alakaʻi, hoʻomaka mākou e hana i kā mākou huahana. E ʻike kākou i nā mea i loaʻa iā kākou ma kēia pae.

Hoʻomaka wikiwiki

E hoʻomaka kākou me kahi kamaʻāina mua me ka noi. Hiki iā ʻoe ke hoʻoiho ma kā mākou pūnaewele. I kēia manawa, kākoʻo ʻia nā kahua nui 3 - Windows, Linux, MacOS. Hoʻoiho, hoʻouka, hoʻomaka. Ke hoʻomaka ʻoe iā ia no ka manawa mua, ʻike paha ʻoe i kēia pukaaniani:

TestMace - he IDE ikaika no ka hana pū me nā API

Kaomi ma ka hōʻailona hoʻohui ma ka piko o ka wahi maʻiʻo e hana i kāu noi mua. Penei ke ano o ka papa ninau:

TestMace - he IDE ikaika no ka hana pū me nā API

E nānā hou aku kākou. Ua like loa ka interface noi me ka interface o nā mea hoʻomaha hoʻomaha kaulana, e maʻalahi ai ka neʻe ʻana mai nā mea hana like. E hana kāua i ka noi mua i ka url https://next.json-generator.com/api/json/get/NJv-NT-U8

TestMace - he IDE ikaika no ka hana pū me nā API

Ma keʻano laulā, i ka nānā muaʻana,ʻaʻole hoʻi e hoʻolei i nā mea kāhāhā ka pane pane. Eia naʻe, makemake wau e huki i kou manaʻo i kekahi mau mea:

  1. Hōʻike ʻia ke kino o ka pane ma ke ʻano o kahi lāʻau, ka mea mua e hoʻohui i ka ʻike ʻike a ʻo ka lua e ʻae iā ʻoe e hoʻohui i kekahi mau hiʻohiʻona hoihoi e pili ana i lalo.
  2. Aia kahi ʻāpana Assertions, e hōʻike ana i kahi papa inoa o nā hoʻokolohua no kahi noi i hāʻawi ʻia

E like me kāu e ʻike ai, hiki ke hoʻohana ʻia kā mākou mea hana ma ke ʻano he mea hoʻomaha hoʻomaha kūpono. Akā naʻe, ʻaʻole mākou e hele ma ʻaneʻi inā i kaupalena ʻia kona hiki i ka hoʻouna ʻana i nā noi. A laila, e wehewehe au i nā manaʻo kumu a me nā hana o TestMace.

Nā Manaʻo kumu a me nā hiʻohiʻona

ʻO Knot

Hoʻokaʻawale ʻia ka hana TestMace i nā ʻano nodes like ʻole. Ma ka laʻana ma luna nei, ua hōʻike mākou i ka hana o ka node RequestStep. Eia nō naʻe, aia nā ʻano nodes i kēia manawa i ka noi:

  • NīnauStep. ʻO kēia ka node e hiki ai iā ʻoe ke hana i kahi noi. Hiki iā ia ke loaʻa hoʻokahi node Assertion ma ke ʻano he keiki.
  • ʻŌlelo hoʻohiki. Hoʻohana ʻia ka node e kākau i nā hoʻokolohua. Hiki ke lilo i node keiki o ka node RequestStep.
  • waihona. E ʻae iā ʻoe e hui pū i nā kōpena Folder a me RequestStep i loko o lākou iho.
  • Papahana. ʻO kēia ke kumu kumu, hana maʻalahi i ka wā e hana ai i kahi papahana. A i ʻole, hana hou ia i ka hana o ka node Folder.
  • loulou. loulou i ka waihona a i ʻole RequestStep node. ʻAe iā ʻoe e hoʻohana hou i nā nīnau a me nā palapala.
  • a pēlā aku nō.

Aia nā nodes i nā ʻōpala (ka panel ma ka ʻaoʻao hema, hoʻohana ʻia no ka hana wikiwiki ʻana i nā nīnau "hoʻokahi-off") a ma nā papahana (ka papa ma ka ʻaoʻao hema), a mākou e noʻonoʻo hou ai.

ʻO ka papahana

Ke hoʻomaka ʻoe i ka noi, ʻike paha ʻoe i kahi laina Project lone ma ka ʻaoʻao hema hema. ʻO kēia ke kumu o ka lāʻau papahana. Ke hoʻomaka ʻoe i kahi papahana, hana ʻia kahi papahana no ka manawa pōkole, ke ala e pili ai i kāu ʻōnaehana hana. I kēlā me kēia manawa hiki iā ʻoe ke hoʻoneʻe i ka papahana i kahi kūpono no ʻoe.

ʻO ke kumu nui o ka papahana ʻo ia ka hiki ke mālama i nā hoʻomohala ʻana i ka ʻōnaehana faila a hoʻonohonoho hou iā lākou ma o nā ʻōnaehana mana mana, holo i nā palapala ma CI, loiloi i nā loli, etc.

Nā Loli

ʻO nā ʻano like ʻole kekahi o nā mīkini koʻikoʻi o kahi noi. ʻO ka poʻe o ʻoukou e hana nei me nā mea hana e like me TestMace ua loaʻa paha i kahi manaʻo o kā mākou e kamaʻilio nei. No laila, he ala e mālama ai i ka ʻikepili maʻamau a kamaʻilio ma waena o nā nodes. ʻO kahi analogue, no ka laʻana, he mau mea hoʻololi kaiapuni i Postman a i ʻole Insomnia. Eia naʻe, ua hele mākou a hoʻomohala i ke kumuhana. Ma TestMace, hiki ke hoʻonohonoho ʻia nā ʻano like ʻole ma ka pae node. Kekahi. Aia kekahi ʻano hoʻoilina no ka hoʻoili ʻana i nā mea hoʻololi mai nā kūpuna mai a me nā ʻano hoʻololi hili i nā mamo. Eia kekahi, aia kekahi mau mea hoʻololi i kūkulu ʻia, hoʻomaka nā inoa o nā mea i kūkulu ʻia $. Eia kekahi o lākou:

  • $prevStep - loulou i nā mea hoʻololi o ka node mua
  • $nextStep - loulou i nā mea hoʻololi o ka node aʻe
  • $parent - ka mea like, akā no ke kupuna wale nō
  • $response - pane mai ke kikowaena
  • $env - nā hoʻololi kaiapuni o kēia manawa
  • $dynamicVar - nā ʻano hoʻololi i hana ʻia i ka wā o ka palapala a i ʻole ka hoʻokō ʻana i ka nīnau

$env - he mau ʻano hoʻololi maʻamau kēia o ka Project node level, akā naʻe, hoʻololi ka hoʻonohonoho o nā mea hoʻololi kaiapuni ma muli o ke kaiapuni i koho ʻia.

Loaʻa ka loli ma o ${variable_name}
Hiki i ka waiwai o ka mea hoʻololi ke hoʻololi ʻē aʻe, a i ʻole he ʻōlelo holoʻokoʻa. No ka laʻana, hiki ke hoʻololi i ka url i kahi ʻōlelo like
http://${host}:${port}/${endpoint}.

Ma kahi kaʻawale, pono ia e ʻike i ka hiki ke hāʻawi i nā mea hoʻololi i ka wā o ka hoʻokō ʻana i ka palapala. No ka laʻana, pono pinepine e mālama i ka ʻikepili ʻae (he hōʻailona a i ʻole ke poʻo holoʻokoʻa) i hele mai mai ka kikowaena ma hope o ka hoʻopaʻa inoa ʻana. ʻAe ʻo TestMace iā ʻoe e mālama i ia ʻikepili i loko o nā loli ikaika o kekahi o nā kūpuna. I mea e pale aku ai i ka hoʻokuʻi ʻana me nā mea hoʻololi "static" i loaʻa, ua hoʻokomo ʻia nā mea hoʻololi i kahi mea ʻokoʻa $dynamicVar.

Nā hiʻohiʻona

Me ka hoʻohana ʻana i nā hiʻohiʻona āpau i luna, hiki iā ʻoe ke holo i nā palapala noiʻi holoʻokoʻa. No ka laʻana, hana i kahi hui -> nīnau i kahi hui -> holoi i kahi hui. I kēia hihia, no ka laʻana, hiki iā ʻoe ke hoʻohana i ka node Folder e hui pū i kekahi mau node RequestStep.

Ka hoʻopiha ʻana a me ka hōʻike ʻana

No ka hana maʻalahi me nā mea hoʻololi (a ʻaʻole wale) pono ka autocompletion. A ʻoiaʻiʻo, e hōʻike ana i ka waiwai o kahi ʻōlelo i mea e maʻalahi a maʻalahi hoʻi e wehewehe i ke ʻano o kahi ʻano like ʻole. ʻO kēia ka hihia inā ʻoi aku ka maikaʻi o ka ʻike hoʻokahi ma mua o ka lohe ʻana i hoʻokahi haneli:

TestMace - he IDE ikaika no ka hana pū me nā API

He mea pono e hoʻomaopopo i ka hoʻokō ʻana i ka autocompletion ʻaʻole wale no nā loli, akā, no ka laʻana, no nā poʻomanaʻo, nā waiwai o kekahi mau poʻo (no ka laʻana, autocompletion no ka Content-Type header), nā protocols a me nā mea hou aku. Hoʻonui mau ʻia ka papa inoa i ka ulu ʻana o ka noi.

Wehe/hoihoi

ʻO ka wehe ʻana / hana hou i nā loli he mea maʻalahi loa ia, akā no kekahi kumu ʻaʻole i hoʻokō ʻia ma nā wahi āpau (a ʻaʻole ʻokoʻa nā mea hana no ka hana ʻana me nā API). Akā ʻaʻole mākou kekahi o ia mau mea!) Ua hoʻokō mākou i ka undo/redo i loko o ka papahana holoʻokoʻa, kahi e hiki ai iā ʻoe ke wehe ʻaʻole wale i ka hoʻoponopono ʻana i kahi node kikoʻī, akā i kāna hana ʻana, holoi ʻana, neʻe, etc. Pono nā hana koʻikoʻi e hōʻoia.

Ke hana ʻana i nā hoʻokolohua

Na ka Assertion node ke kuleana no ka hana ʻana i nā hoʻokolohua. ʻO kekahi o nā hiʻohiʻona nui ka hiki ke hana i nā hoʻokolohua me ka ʻole o ka papahana, me ka hoʻohana ʻana i nā mea hoʻoponopono i kūkulu ʻia.

ʻO kahi node Assertion kahi pūʻulu o nā ʻōlelo. Loaʻa i kēlā me kēia ʻōlelo kāna ʻano ponoʻī; i kēia manawa aia kekahi mau ʻano o nā ʻōlelo

  1. Hoʻohālikelike i nā waiwai - hoʻohālikelike wale i nā waiwai 2. Nui nā mea hoʻohālikelike: like, ʻaʻole like, ʻoi aku ka nui, ʻoi aku ka nui a i ʻole like me, ka liʻiliʻi, ka liʻiliʻi a i ʻole ka like.

  2. Loaʻa ka waiwai - nānā i ke kū ʻana o kahi substring ma kahi kaula.

  3. XPath - nānā i ka mea koho ma XML i loaʻa kekahi waiwai.

  4. ʻO ka ʻōlelo JavaScript he palapala javascript kūʻokoʻa e hoʻihoʻi i ka ʻoiaʻiʻo i ka kūleʻa a me ka hoʻopunipuni i ka hāʻule ʻole.

Hoʻomaopopo wau ʻo ka mea hope wale nō e koi i nā mākau polokalamu mai ka mea hoʻohana, ua hana ʻia nā ʻōlelo 3 ʻē aʻe me ka hoʻohana ʻana i kahi kiʻi kiʻi. Eia, no ka laʻana, ke ʻano o ke kamaʻilio no ka hoʻokumu ʻana i ka ʻōlelo hoʻohālikelike waiwai:

TestMace - he IDE ikaika no ka hana pū me nā API

ʻO ka icing on the cake ka hana wikiwiki o nā ʻōlelo mai nā pane, e nānā wale!

TestMace - he IDE ikaika no ka hana pū me nā API

Eia naʻe, loaʻa nā palena ʻokoʻa o ia mau ʻōlelo, a makemake paha ʻoe e hoʻohana i kahi ʻōlelo javascript e lanakila ai. A ma ʻaneʻi hāʻawi ʻo TestMace i kahi ʻoluʻolu me ka autocompletion, syntax highlighting a me kahi mea hoʻoponopono static.

Hōʻike API

ʻAʻole hiki iā TestMace ke hoʻohana wale i ka API, akā e kākau pū kekahi. Eia kekahi, ʻo ka wehewehe ponoʻī he ʻano hierarchical a kūpono i ke koena o ka papahana. Eia kekahi, hiki i kēia manawa ke hoʻokomo i nā wehewehe API mai Swagger 2.0 / OpenAPI 3.0 formats. ʻO ka wehewehe ponoʻī ʻaʻole e moe wale i ke kaumaha make, akā ua pili pū me ke koena o ka papahana, ʻo ia hoʻi, loaʻa ka auto-completion o nā URL, nā poʻomanaʻo HTTP, nā ʻāpana nīnau, a me nā mea ʻē aʻe, a i ka wā e hiki mai ana mākou e hoʻolālā e hoʻohui i nā hoʻokolohua. no ka hoʻokō ʻana i ka pane me ka wehewehe API.

Kaʻana puʻupuʻu

Ka hihia: makemake ʻoe e kaʻana like i kahi noi pilikia a i ʻole kahi palapala holoʻokoʻa me kahi hoa hana a i ʻole e hoʻopili wale iā ia i kahi pahu. Hoʻopili pū ʻia ʻo TestMace i kēia hihia: hiki i ka noi ke hoʻokaʻawale i nā node a me kahi subtree i kahi URL. E kope-paʻi a hiki iā ʻoe ke hoʻololi maʻalahi i ka noi i kahi mīkini ʻē aʻe a i ʻole papahana.

Hōʻano waihona waihona pāhana hiki ke heluhelu ʻia e ke kanaka

I kēia manawa, mālama ʻia kēlā me kēia node i kahi faila ʻokoʻa me ka extension yml (e like me ke ʻano o ka Assertion node), a i ʻole i loko o kahi waihona me ka inoa o ka node a me ka faila index.yml i loko.
No ka laʻana, ʻo ia ke ʻano o ka faila noi a mākou i hana ai i ka loiloi ma luna.

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

E like me kāu e ʻike ai, maopopo loa nā mea a pau. Inā makemake ʻia, hiki ke hoʻoponopono lima ʻia kēia ʻano.

ʻO ka hierarchy o nā waihona ma ka ʻōnaehana faila e hoʻihoʻi hou i ka hierarchy o nā nodes i ka papahana. No ka laʻana, he palapala e like me:

TestMace - he IDE ikaika no ka hana pū me nā API

Palapala ʻia i ka ʻōnaehana waihona i kēia ʻano (ʻo ka hierarchy folder wale nō i hōʻike ʻia, akā maopopo ke ʻano)

TestMace - he IDE ikaika no ka hana pū me nā API

He mea maʻalahi ke kaʻina hana loiloi.

Lawe mai ka Leta

Ma hope o ka heluhelu ʻana i nā mea a pau i luna, makemake kekahi mau mea hoʻohana e hoʻāʻo (ʻaʻole?) i kahi huahana hou a i ʻole (he aha ka pōʻino ʻole!) hoʻohana pono iā ia i kā lākou papahana. Eia nō naʻe, hiki ke pani ʻia ka neʻe ʻana e ka nui o nā hoʻomohala ʻana i ka Postman like. No ia mau hihia, kākoʻo ʻo TestMace i ka lawe ʻana mai i nā hōʻiliʻili mai Postman. I kēia manawa, kākoʻo ʻia ka lawe ʻana mai me ka hoʻāʻo ʻole, akā ʻaʻole mākou e kāpae i ke kākoʻo ʻana iā lākou i ka wā e hiki mai ana.

Hoʻolālā

Manaʻo wau he nui ka poʻe i heluhelu a hiki i kēia manawa i makemake i kā mākou huahana. Akā naʻe, ʻaʻole ʻo ia wale nō! Ke holo nei ka hana ma ka huahana a eia kekahi mau hiʻohiʻona a mākou e manaʻo nei e hoʻohui koke.

ʻO ke ao hoʻonohonoho

ʻO kekahi o nā hiʻohiʻona i noi nui ʻia. I kēia manawa, manaʻo mākou e hoʻohana i nā ʻōnaehana mana mana no ka hoʻonohonoho ʻana, no laila mākou e hoʻomaikaʻi ai i ke ʻano no kēia ʻano mālama. Akā naʻe, ʻaʻole kūpono kēia kaʻina hana no kēlā me kēia kanaka, no laila ke manaʻo nei mākou e hoʻohui i kahi ʻano hana hoʻonohonoho i kamaʻāina i nā mea he nui ma o kā mākou mau kikowaena.

CLI

E like me ka mea i ʻōlelo ʻia ma luna, ʻaʻole hiki i nā huahana IDE-level ke hana me ka ʻole o nā ʻano hoʻohui āpau me nā noi a i ʻole nā ​​kahe hana. ʻO ka CLI ka mea e pono ai e hoʻohui i nā hoʻokolohua i kākau ʻia ma TestMace i loko o ke kaʻina hana hoʻohui mau. Ke holo nei ka hana ma ka CLI; e hoʻomaka nā mana mua i ka papahana me kahi hōʻike console maʻalahi. I ka wā e hiki mai ana mākou e hoʻolālā e hoʻohui i ka hoʻopuka hōʻike ma ka format JUnit.

Pūnaehana hoʻopili

ʻOiai ka mana a pau o kā mākou mea hana, ʻo ka hoʻonohonoho o nā hihia e koi ai i nā hoʻonā he palena ʻole. Ma hope o nā mea a pau, aia nā hana e pili ana i kahi papahana. ʻO ia ke kumu i ka wā e hiki mai ana mākou e hoʻolālā e hoʻohui i kahi SDK no ka hoʻomohala ʻana i nā plugins a hiki i kēlā me kēia mea hoʻomohala ke hoʻohui i nā hana i kā lākou makemake.

Hoʻonui i ka laulā o nā ʻano node

ʻAʻole pili kēia pūʻulu o nā nodes i nā hihia āpau i koi ʻia e ka mea hoʻohana. Nodes i hoʻolālā ʻia e hoʻohui ʻia:

  • Script node - hoʻololi a waiho i ka ʻikepili me ka js a me ka API pili. Me ka hoʻohana ʻana i kēia ʻano node, hiki iā ʻoe ke hana i nā mea e like me ka noi mua a me nā palapala noi hope ma Postman.
  • GraphQL node - kākoʻo graphql
  • Node assertion maʻamau - e ʻae iā ʻoe e hoʻonui i ka hoʻonohonoho o nā ʻōlelo i loaʻa i ka papahana
    ʻO ka mea maʻamau, ʻaʻole kēia he papa inoa hope; e hoʻonui mau ʻia ma muli o kāu mau manaʻo.

NPP

Pehea ʻoe i ʻokoʻa ai me ka mea leka uila?

  1. ʻO ka manaʻo o nā nodes, kahi e hiki ai iā ʻoe ke hoʻonui i ka hana o ka papahana
  2. ʻO ke ʻano papahana hiki ke heluhelu ʻia e ke kanaka me ka mālama ʻana iā ia i kahi ʻōnaehana faila, e hoʻomaʻamaʻa i ka hana me ka hoʻohana ʻana i nā ʻōnaehana mana mana
  3. Hiki ke hana i nā hoʻokolohua me ka ʻole o ka hoʻolālā ʻana a me ke kākoʻo ʻoi aʻe o ka js i ka hoʻoponopono hoʻāʻo (autocompletion, static analyzer)
  4. Autocompletion kiʻekiʻe a me ka hōʻike ʻana i ka waiwai o nā ʻano like ʻole

He huahana hāmama kēia?

ʻAʻole, i kēia manawa ua pani ʻia nā kumu, akā i ka wā e hiki mai ana ke noʻonoʻo nei mākou i ka hiki ke wehe i nā kumu

He aha kāu e ola ai?)

Me ka mana manuahi, hoʻolālā mākou e hoʻokuʻu i kahi mana uku o ka huahana. E hoʻokomo mua ia i nā mea e koi ai i kahi ʻaoʻao kikowaena, no ka laʻana, synchronization.

hopena

Ke neʻe nei kā mākou papahana i kahi hoʻokuʻu paʻa. Eia nō naʻe, hiki ke hoʻohana ʻia ka huahana, a ʻo ka manaʻo maikaʻi mai kā mākou mea hoʻohana mua he hōʻoia o kēia. Hoʻopili ikaika mākou i nā manaʻo manaʻo, no ka mea me ka ʻole o ka launa pū ʻana me ke kaiāulu ʻaʻole hiki ke kūkulu i kahi mea hana maikaʻi. Hiki iā ʻoe ke loaʻa iā mākou ma aneʻi:

Paena pūnaewele

Telegram

Slack

Facebook

Mea hoʻopuka pilikia

Ke kali nei mākou i kāu mau manaʻo a me nā manaʻo!

Source: www.habr.com

Pākuʻi i ka manaʻo hoʻopuka