TestMace - IDE mai ƙarfi don aiki tare da APIs

Sannu duka! A yau muna son gabatar wa jama'a IT samfurin mu - IDE don aiki tare da APIs TestMace. Wataƙila wasunku sun riga sun san mu daga labaran da suka gabata. Duk da haka, babu wani cikakken nazari game da kayan aiki, don haka muna magance wannan gazawar.

TestMace - IDE mai ƙarfi don aiki tare da APIs

Motsawa

Ina so in fara da yadda, a gaskiya, mun zo wannan rayuwar kuma mun yanke shawarar ƙirƙirar kayan aikin mu don aikin ci gaba tare da API. Bari mu fara da jerin ayyukan da ya kamata samfur ya samu, wanda, a ra'ayinmu, zamu iya cewa "IDE don aiki tare da APIs" ne:

  • Ƙirƙirar da aiwatar da tambayoyi da rubutun (jerin tambayoyin)
  • Rubuta nau'ikan gwaje-gwaje daban-daban
  • Gwaji tsara
  • Yin aiki tare da kwatancen API, gami da sayo daga tsari kamar Swagger, OpenAPI, WADL, da sauransu.
  • Buƙatun izgili
  • Kyakkyawan goyon baya ga harshe ɗaya ko fiye don rubuta rubutun, gami da haɗin kai tare da shahararrun ɗakunan karatu
  • da sauransu.

Za a iya faɗaɗa lissafin don dacewa da dandano. Bugu da ƙari, yana da mahimmanci don ƙirƙirar ba kawai IDE kanta ba, har ma da wasu abubuwan more rayuwa, kamar daidaitawar girgije, kayan aikin layin umarni, sabis na saka idanu akan layi, da sauransu. A ƙarshe, abubuwan da suka faru na 'yan shekarun nan suna nuna mana ba kawai ayyuka masu ƙarfi na aikace-aikacen ba, har ma da ƙa'idarsa mai daɗi.

Wanene yake buƙatar irin wannan kayan aiki? Babu shakka, duk waɗanda aƙalla suke da alaƙa da haɓakawa da gwajin APIs masu haɓakawa ne da masu gwadawa =). Bugu da ƙari, idan ga tsohon sau da yawa ya isa ya aiwatar da tambayoyin guda ɗaya da rubutun masu sauƙi, to, ga masu gwadawa wannan yana daya daga cikin manyan kayan aiki, wanda, a tsakanin sauran abubuwa, ya kamata ya haɗa da wani tsari mai karfi don rubuta gwaje-gwaje tare da ikon gudanar da su a ciki. CI.

Don haka, bin waɗannan jagororin, mun fara ƙirƙirar samfuran mu. Bari mu ga abin da muka cim ma a wannan matakin.

Saurin farawa

Bari mu fara da sanin farko tare da aikace-aikacen. Kuna iya sauke shi a gidan yanar gizon mu. A halin yanzu, ana tallafawa duk manyan dandamali 3 - Windows, Linux, MacOS. Zazzage, shigar, ƙaddamarwa. Lokacin da kuka ƙaddamar da shi a karon farko, kuna iya ganin taga mai zuwa:

TestMace - IDE mai ƙarfi don aiki tare da APIs

Danna alamar ƙari a saman yankin abun ciki don ƙirƙirar buƙatarku ta farko. Shafin tambaya yayi kama da haka:

TestMace - IDE mai ƙarfi don aiki tare da APIs

Bari mu duba dalla-dalla. Keɓancewar buƙatun ya yi kama da mahaɗar mashahuran abokan ciniki, wanda ke sa ƙaura daga kayan aikin makamancin haka ya fi sauƙi. Bari mu fara buƙatar farko zuwa url https://next.json-generator.com/api/json/get/NJv-NT-U8

TestMace - IDE mai ƙarfi don aiki tare da APIs

Gabaɗaya, a kallon farko, kwamitin amsawa shima baya jefar da wani abin mamaki. Duk da haka, ina so in ja hankalin ku ga wasu batutuwa:

  1. Jikin amsa yana wakilta a cikin nau'i na itace, wanda da farko yana ƙara abubuwan da ke cikin bayanai kuma na biyu yana ba ku damar ƙara wasu abubuwa masu ban sha'awa game da abin da ke ƙasa.
  2. Akwai Tabbataccen shafin, wanda ke nuna jerin gwaje-gwaje don buƙatun da aka bayar

Kamar yadda kake gani, ana iya amfani da kayan aikin mu azaman abokin ciniki mai dacewa. Koyaya, ba za mu kasance a nan ba idan ikonsa ya iyakance ga aika buƙatun kawai. Na gaba, zan fayyace mahimman dabaru da ayyukan TestMace.

Basic Concepts and Features

Kyau

Ayyukan TestMace ya kasu kashi daban-daban na nodes. A cikin misalin da ke sama, mun nuna aikin kumburin RequestStep. Koyaya, nau'ikan nodes masu zuwa yanzu ana samun su a cikin aikace-aikacen:

  • Matakin nema Wannan ita ce kumburin da zaku iya ƙirƙirar buƙata. Yana iya samun kumburin Ƙimar Ƙirarriya ɗaya kawai a matsayin ɓangaren yara.
  • Tabbatarwa. Ana amfani da kumburin don rubuta gwaje-gwaje. Za a iya zama kumburin yaro kawai na kumburin Neman Mataki.
  • Jaka Yana ba ku damar haɗa babban fayil da kuɗaɗen Neman Mataki a cikin kansu.
  • Aikin. Wannan shine tushen tushen, wanda aka ƙirƙira ta atomatik lokacin da aka ƙirƙiri aikin. In ba haka ba, yana maimaita aikin kumburin Jaka.
  • mahada. Hanyar haɗi zuwa babban fayil ko Ƙirar Matakin Nema. Yana ba ku damar sake amfani da tambayoyin da rubutun.
  • da sauransu.

Ana samun nodes a cikin ɓarna (fashin da ke ƙasan hagu, ana amfani da shi don ƙirƙirar tambayoyin "ɗaya ɗaya" da sauri) kuma a cikin ayyukan (panel a saman hagu), wanda za mu zauna dalla-dalla.

Wannan aikin

Lokacin da kuka ƙaddamar da aikace-aikacen, kuna iya lura da layin Project guda ɗaya a kusurwar hagu na sama. Wannan shine tushen bishiyar aikin. Lokacin da kuka fara aiki, an ƙirƙiri aikin wucin gadi, hanyar da ta dogara da tsarin aikin ku. A kowane lokaci zaka iya matsar da aikin zuwa wurin da ya dace da kai.

Babban manufar aikin shine ikon adana abubuwan haɓakawa a cikin tsarin fayil kuma ƙara daidaita su ta hanyar tsarin sarrafa sigar, gudanar da rubutun a cikin CI, sake duba canje-canje, da sauransu.

Bambanci

Canje-canje suna ɗaya daga cikin mahimman hanyoyin aikace-aikacen. Ku waɗanda ke aiki da kayan aikin kamar TestMace ƙila sun riga sun sami ra'ayin abin da muke magana akai. Don haka, masu canji hanya ce ta adana bayanai gama gari da sadarwa tsakanin nodes. Misali, misali, masu canjin yanayi ne a cikin Postman ko rashin barci. Duk da haka, mun ci gaba da bunkasa batun. A cikin TestMace, ana iya saita masu canji a matakin kumburi. Kowa. Akwai kuma hanyar gadon sauye-sauye daga kakanni da mabambantan mabambantan zuriya. Bugu da kari akwai adadin ginannun ma'auni, sunayen ma'auni na ginanniyar suna farawa da $. Ga wasu daga cikinsu:

  • $prevStep - haɗi zuwa masu canji na kumburin baya
  • $nextStep - haɗi zuwa masu canji na kumburi na gaba
  • $parent - abu guda, amma ga kakanni kawai
  • $response - amsa daga uwar garken
  • $env - masu canjin yanayi na yanzu
  • $dynamicVar - masu canji masu ƙarfi waɗanda aka ƙirƙira yayin rubutun ko aiwatar da tambaya

$env - Waɗannan su ne ainihin sauye-sauyen matakin kumburin aikin na yau da kullun, duk da haka, saitin masu canjin yanayi yana canzawa dangane da yanayin da aka zaɓa.

Ana samun dama ga maɓalli ta hanyar ${variable_name}
Ƙimar maɓalli na iya zama wani maɓalli, ko ma duka magana. Misali, maballin url na iya zama magana kamar
http://${host}:${port}/${endpoint}.

Na dabam, yana da kyau a lura da yiwuwar sanya masu canji yayin aiwatar da rubutun. Misali, sau da yawa ana buƙatar adana bayanan izini (alama ko gabaɗayan taken) waɗanda suka fito daga uwar garken bayan shiga cikin nasara. TestMace yana ba ku damar adana irin waɗannan bayanan cikin masu canji masu ƙarfi na ɗaya daga cikin kakanni. Don guje wa karo tare da sauye-sauye na “tsaye” da aka rigaya, ana sanya masu canji a cikin wani abu dabam $dynamicVar.

Al'amura

Amfani da duk abubuwan da ke sama, zaku iya gudanar da dukkan rubutun tambaya. Misali, ƙirƙirar mahallin -> tambayar mahaluži -> share mahaluži. A wannan yanayin, alal misali, zaku iya amfani da kumburin Jaka don haɗa nodes ɗin Neman Mataki da yawa.

Ƙaddamarwa ta atomatik da nuna alama

Don aiki mai dacewa tare da masu canji (kuma ba kawai) ƙaddamarwa ta atomatik ya zama dole. Kuma ba shakka, nuna darajar magana don sauƙaƙawa kuma mafi dacewa don fayyace abin da wani maɓalli na musamman yake daidai da shi. Wannan shi ne ainihin lamarin idan yana da kyau a gani sau ɗaya fiye da ji sau ɗari:

TestMace - IDE mai ƙarfi don aiki tare da APIs

Shi ne ya kamata a lura da cewa autocompletion aka aiwatar ba kawai ga masu canji, amma kuma, misali, ga headers, dabi'u na wasu headers (misali autocompletion for Content-Type header), ladabi da yafi. Ana sabunta lissafin koyaushe yayin da aikace-aikacen ke girma.

Gyara/sake gyara

Gyarawa / sake gyara canje-canje abu ne mai dacewa sosai, amma saboda wasu dalilai ba a aiwatar da shi a ko'ina (kuma kayan aikin aiki tare da APIs ba banda). Amma ba mu ɗaya daga cikin waɗannan!) Mun aiwatar da gyara / sake gyarawa a cikin dukan aikin, wanda ke ba ka damar gyara ba kawai gyara wani kumburi ba, har ma da halittarsa, shafewa, motsi, da dai sauransu. Ayyuka mafi mahimmanci suna buƙatar tabbatarwa.

Ƙirƙirar gwaje-gwaje

Kullin Tabbatarwa yana da alhakin ƙirƙirar gwaje-gwaje. Ɗaya daga cikin manyan fasalulluka shine ikon ƙirƙirar gwaje-gwaje ba tare da shirye-shirye ba, ta amfani da ginanniyar gyara.

Kullin Tabbatarwa ya ƙunshi saitin ikirari. Kowane ikirari yana da nau'insa; a halin yanzu akwai nau'ikan furucin

  1. Kwatanta dabi'u - kawai yana kwatanta dabi'u 2. Akwai ma'aikatan kwatance da yawa: daidai, ba daidai ba, mafi girma, girma ko daidaita, ƙasa da, ƙasa ko daidai da.

  2. Ya ƙunshi ƙima - yana bincika abin da ya faru na ƙaramin kirtani a cikin kirtani.

  3. XPath - yana bincika cewa mai zaɓi a cikin XML ya ƙunshi takamaiman ƙima.

  4. Tabbatar da JavaScript rubutun javascript ne na sabani wanda ke dawo da gaskiya akan nasara da karya akan gazawa.

Na lura cewa kawai na ƙarshe yana buƙatar ƙwarewar shirye-shirye daga mai amfani, sauran maganganun 3 an ƙirƙira su ta amfani da ƙirar hoto. Anan, alal misali, shine abin da maganganun ƙirƙira ƙimar ƙimar kwatancen tayi kama:

TestMace - IDE mai ƙarfi don aiki tare da APIs

Icing a kan kek shine saurin ƙirƙirar ikirari daga martani, kalli shi kawai!

TestMace - IDE mai ƙarfi don aiki tare da APIs

Koyaya, irin waɗannan ikirari suna da ƙayyadaddun iyakoki, waɗanda ƙila za ku so ku yi amfani da furcin javascript don shawo kan su. Kuma a nan TestMace kuma yana ba da yanayi mai daɗi tare da ƙaddamarwa ta atomatik, nuna alamar syntax har ma da na'urar tantancewa.

Bayanin API

TestMace yana ba ku damar amfani da API kawai, amma har ma don rubuta shi. Haka kuma, bayanin kansa shima yana da tsari na matsayi kuma ya dace da sauran aikin. Bugu da kari, a halin yanzu yana yiwuwa a shigo da kwatancen API daga tsarin Swagger 2.0 / OpenAPI 3.0. Bayanin da kansa ba kawai yana kwance mataccen nauyi ba ne, amma an haɗa shi tare da sauran aikin, musamman, cikawa ta atomatik na URLs, taken HTTP, sigogin tambaya, da sauransu, kuma a nan gaba muna shirin ƙara gwaje-gwaje. don yarda da amsa tare da bayanin API.

Raba kumburi

Harka: kuna so a raba buƙatu mai matsala ko ma da gabaɗayan rubutun tare da abokin aiki ko kawai haɗa shi zuwa kwaro. TestMace yana rufe wannan harka kuma: aikace-aikacen yana ba ku damar tsara kowane kumburi har ma da ƙaramin itace a cikin URL. Kwafi-manna kuma zaka iya canja wurin buƙatun cikin sauƙi zuwa wata na'ura ko aiki.

Tsarin ajiyar aikin da mutum zai iya karantawa

A halin yanzu, kowane kumburi ana adana shi a cikin wani fayil daban tare da tsawo na yml (kamar yadda yake tare da node Assertion), ko a cikin babban fayil mai sunan node da fayil ɗin index.yml a ciki.
Misali, wannan shine abin da fayil ɗin buƙatar da muka yi a cikin bita na sama yayi kama da:

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

Kamar yadda kake gani, komai ya fito fili. Idan ana so, ana iya gyara wannan tsari cikin sauƙi da hannu.

Matsayin manyan fayiloli a cikin tsarin fayil gaba ɗaya yana maimaita matsayi na nodes a cikin aikin. Misali, rubutun kamar:

TestMace - IDE mai ƙarfi don aiki tare da APIs

Taswirar tsarin fayil zuwa tsari mai zuwa (tsarin babban fayil ne kawai aka nuna, amma ainihin ainihin a bayyane yake)

TestMace - IDE mai ƙarfi don aiki tare da APIs

Wannan yana sauƙaƙa tsarin bitar aikin.

Shigo daga ma'aikacin gidan waya

Bayan karanta duk abubuwan da ke sama, wasu masu amfani za su so su gwada (daidai?) sabon samfur ko (abin da jahannama ba wasa ba!) Gaba ɗaya amfani da shi a cikin aikin su. Koyaya, ana iya dakatar da ƙaura ta babban adadin ci gaba a cikin ma'aikacin gidan waya guda. Don irin waɗannan lokuta, TestMace yana goyan bayan shigo da tarin daga Postman. A halin yanzu, ana tallafawa shigo da kayayyaki ba tare da gwaji ba, amma ba mu yanke shawarar tallafa musu a nan gaba ba.

Shirye-shirye

Ina fatan da yawa daga cikin waɗanda suka karanta har zuwa wannan batu sun so samfurin mu. Duk da haka, ba wannan ke nan ba! Aiki a kan samfurin yana cikin ci gaba kuma ga wasu fasalulluka waɗanda muke shirin ƙarawa nan ba da jimawa ba.

Cloud daidaitawa

Ɗaya daga cikin abubuwan da aka fi nema. A halin yanzu, muna ba da shawarar yin amfani da tsarin sarrafa sigar don aiki tare, wanda muke sa tsarin ya fi abokantaka don irin wannan ajiyar. Koyaya, wannan aikin bai dace da kowa ba, don haka muna shirin ƙara tsarin aiki tare da mutane da yawa sabani ta hanyar sabar mu.

CLI

Kamar yadda aka ambata a sama, samfuran matakin IDE ba za su iya yin ba tare da kowane nau'in haɗe-haɗe tare da aikace-aikacen da ake ciki ko gudanawar aiki ba. CLI shine ainihin abin da ake buƙata don haɗa gwaje-gwajen da aka rubuta a cikin TestMace cikin ci gaba da tsarin haɗin kai. Aiki a kan CLI yana kan ci gaba; sigogin farko za su ƙaddamar da aikin tare da rahoton wasan bidiyo mai sauƙi. A nan gaba muna shirin ƙara fitar da rahoto a cikin tsarin JUnit.

Tsarin plugin

Duk da ƙarfin kayan aikin mu, saitin shari'o'in da ke buƙatar mafita ba shi da iyaka. Bayan haka, akwai ayyuka da suka keɓance ga wani aiki na musamman. Abin da ya sa a nan gaba muna shirin ƙara SDK don haɓaka plugins kuma kowane mai haɓakawa zai iya ƙara ayyuka ga abin da suke so.

Fadada kewayon nau'ikan kumburi

Wannan saitin nodes baya rufe duk lamuran da mai amfani ke buƙata. Nodes da aka shirya don ƙara:

  • Kullin rubutun - yana juyawa da sanya bayanai ta amfani da js da API ɗin da ya dace. Amfani da wannan nau'in kumburi, zaku iya yin abubuwa kamar buƙatun farko da rubutun buƙatu a cikin Postman.
  • GraphQL node - goyan bayan graphql
  • Ƙididdigar ƙididdiga ta al'ada - zai ba ku damar faɗaɗa saitin abubuwan da ke akwai a cikin aikin
    A zahiri, wannan ba jerin ƙarshe ba ne; za a sabunta shi koyaushe saboda, a tsakanin sauran abubuwa, ra'ayoyin ku.

FAQ

Yaya kuka bambanta da ma'aikacin gidan waya?

  1. Ma'anar nodes, wanda ke ba ku damar kusan ƙarewa ba tare da ƙaddamar da ayyukan aikin ba
  2. Tsarin aikin da mutum zai iya karantawa tare da adana shi a cikin tsarin fayil, wanda ke sauƙaƙe aiki ta amfani da tsarin sarrafa sigar
  3. Ikon ƙirƙirar gwaje-gwaje ba tare da shirye-shirye ba da ƙarin tallafin js na ci gaba a cikin editan gwajin (aikin kammalawa, mai nazari a tsaye)
  4. Babban cikawa ta atomatik da haskaka ƙimar masu canji na yanzu

Shin wannan samfurin buɗaɗɗe ne?

A'a, a halin yanzu an rufe majiyoyin, amma a nan gaba muna la'akari da yiwuwar bude hanyoyin

Me kuke rayuwa?)

Tare da sigar kyauta, muna shirin fitar da sigar samfurin da aka biya. Da farko zai ƙunshi abubuwan da ke buƙatar gefen uwar garken, misali, aiki tare.

ƙarshe

Aikinmu yana tafiya ta hanyar tsalle-tsalle da iyakoki zuwa tsayayyen saki. Koyaya, ana iya amfani da samfurin, kuma tabbataccen martani daga masu amfani da mu na farko shine tabbacin hakan. Muna tattara ra'ayi sosai, saboda ba tare da haɗin gwiwa tare da al'umma ba zai yuwu a gina kayan aiki mai kyau. Za ku iya samun mu a nan:

Official website

sakon waya

slack

Facebook

Matsalolin tracker

Muna sa ran fatan ku da shawarwarinku!

source: www.habr.com

Add a comment