TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Nyob zoo sawv daws! Niaj hnub no peb xav nthuav qhia rau IT pej xeem peb cov khoom - IDE rau kev ua haujlwm nrog APIs TestMace. Tej zaum koj ib txhia twb paub txog peb los ntawm tsab xov xwm dhau los. Txawm li cas los xij, tsis muaj kev tshuaj xyuas tag nrho ntawm cov cuab yeej, yog li peb hais txog qhov tsis muaj hmoo tsis txaus.

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Kev Txhawb

Kuv xav pib nrog yuav ua li cas, qhov tseeb, peb tuaj rau lub neej no thiab txiav txim siab los tsim peb tus kheej cov cuab yeej rau kev ua haujlwm siab heev nrog API. Cia peb pib nrog cov npe ntawm kev ua haujlwm uas ib yam khoom yuav tsum muaj, uas, hauv peb lub tswv yim, peb tuaj yeem hais tias nws yog "IDE rau kev ua haujlwm nrog APIs":

  • Tsim thiab ua tiav cov lus nug thiab cov ntawv sau (ib ntu ntawm cov lus nug)
  • Sau ntau yam kev xeem
  • Xeem tiam
  • Ua haujlwm nrog API cov lus piav qhia, suav nrog kev xa tawm los ntawm hom xws li Swagger, OpenAPI, WADL, thiab lwm yam.
  • Kev thuam thuam
  • Kev txhawb nqa zoo rau ib lossis ntau hom lus rau kev sau ntawv, suav nrog kev koom ua ke nrog cov tsev qiv ntawv nrov
  • thiab ua li ntawd.

Daim ntawv tuaj yeem nthuav dav kom haum rau koj saj. Ntxiv mus, nws yog ib qho tseem ceeb los tsim tsis tsuas yog IDE nws tus kheej xwb, tab sis kuj muaj qee yam kev tsim kho, xws li huab synchronization, cov cuab yeej hais kom ua, kev saib xyuas online, thiab lwm yam. Thaum kawg, cov qauv ntawm xyoo tsis ntev los no hais rau peb tsis yog tsuas yog lub zog ua haujlwm ntawm daim ntawv thov, tab sis kuj yog nws qhov kev sib txuas zoo nkauj.

Leej twg xav tau lub cuab yeej zoo li no? Obviously, txhua tus uas tsawg kawg yog ib qho kev sib txuas nrog kev txhim kho thiab kev sim APIs yog cov neeg tsim khoom thiab cov neeg sim =). Ntxiv mus, yog tias rau yav dhau los nws feem ntau txaus los ua cov lus nug ib leeg thiab cov ntawv sau yooj yim, tom qab ntawd rau cov neeg sim no yog ib qho ntawm cov cuab yeej tseem ceeb, uas, ntawm lwm yam, yuav tsum muaj lub tshuab muaj zog rau kev sau ntawv xeem nrog lub peev xwm los khiav lawv hauv. CI.

Yog li, ua raws li cov lus qhia no, peb pib tsim peb cov khoom. Cia saib seb peb tau ua tiav li cas ntawm theem no.

Pib nrawm

Cia peb pib nrog thawj tus neeg paub nrog daim ntawv thov. Koj muaj peev xwm download tau nws ntawm peb lub vev xaib. Tam sim no, tag nrho 3 lub platform loj tau txais kev txhawb nqa - Windows, Linux, MacOS. Download, nruab, tso tawm. Thaum koj tso nws thawj zaug, koj tuaj yeem pom lub qhov rai hauv qab no:

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Nyem rau ntawm lub cim ntxiv nyob rau sab saum toj ntawm thaj chaw cov ntsiab lus los tsim koj thawj qhov kev thov. Cov lus nug tab zoo li no:

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Cia peb saib nws hauv kev nthuav dav ntxiv. Qhov kev thov interface yog zoo ib yam li cov interface ntawm cov neeg so nrov, uas ua rau kev tsiv teb tsaws los ntawm cov cuab yeej zoo sib xws yooj yim dua. Cia peb ua thawj qhov kev thov rau url https://next.json-generator.com/api/json/get/NJv-NT-U8

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Feem ntau, thaum xub thawj siab ib muag, lub vaj huam sib luag teb kuj tsis cuam tshuam dab tsi surprises. Txawm li cas los xij, kuv xav kos koj cov xim rau qee cov ntsiab lus:

  1. Lub cev ntawm cov lus teb yog sawv cev nyob rau hauv daim ntawv ntawm tsob ntoo, uas firstly ntxiv cov ntaub ntawv cov ntsiab lus thiab thib ob tso cai rau koj mus ntxiv ib co nthuav nta txog cov hauv qab no
  2. Muaj ib qho Assertions tab, uas qhia cov npe ntawm cov kev xeem rau qhov kev thov

Raws li koj tuaj yeem pom, peb lub cuab yeej tuaj yeem siv los ua tus neeg siv khoom so yooj yim. Txawm li cas los xij, peb yuav tsis nyob ntawm no yog tias nws lub peev xwm raug txwv tsuas yog xa cov lus thov. Tom ntej no, kuv yuav piav qhia txog cov ntsiab lus tseem ceeb thiab kev ua haujlwm ntawm TestMace.

Lub tswv yim thiab nta

Knot

TestMace functionality muab faib ua ntau hom ntawm nodes. Hauv qhov piv txwv saum toj no, peb tau qhia txog kev ua haujlwm ntawm RequestStep node. Txawm li cas los xij, cov nram qab no cov nodes tam sim no kuj muaj nyob rau hauv daim ntawv thov:

  • ThovStep. Nov yog qhov node uas koj tuaj yeem tsim kev thov. Nws tsuas muaj peev xwm muaj ib qho Assertion node raws li tus me nyuam lub caij.
  • Kev lees paub. Cov node yog siv los sau cov kev xeem. Tsuas yog tus me nyuam ntawm qhov RequestStep node.
  • Folder. Tso cai rau koj los pab pawg Folder thiab RequestStep nodes hauv lawv tus kheej.
  • Qhov project. Qhov no yog lub hauv paus node, tsim tau txais thaum tsim qhov project. Txwv tsis pub, nws rov ua haujlwm ntawm Folder node.
  • Txuas. Txuas mus rau Folder lossis RequestStep node. Tso cai rau koj rov siv cov lus nug thiab cov ntawv sau.
  • thiab ua li ntawd.

Cov nodes nyob rau hauv khawb (lub vaj huam sib luag nyob rau hauv qab sab laug, siv rau sai sai tsim "ib-tawm" queries) thiab nyob rau hauv tej yaam num (lub vaj huam sib luag nyob rau sab saum toj sab laug), uas peb yuav nyob rau hauv kom meej ntxiv.

Qhov project

Thaum koj tso daim ntawv thov, koj yuav pom ib txoj kab Project ib leeg nyob rau sab saum toj sab laug. Qhov no yog lub hauv paus ntawm tsob ntoo project. Thaum koj pib ib qhov project, ib qhov project ib ntus raug tsim, txoj hauv kev uas nyob ntawm koj lub operating system. Txhua lub sijhawm koj tuaj yeem txav qhov project mus rau qhov chaw yooj yim rau koj.

Lub hom phiaj tseem ceeb ntawm txoj haujlwm yog lub peev xwm los cawm cov kev tsim kho hauv cov ntaub ntawv kaw lus thiab txuas ntxiv lawv los ntawm cov txheej txheem tswj hwm, khiav cov ntawv sau hauv CI, tshuaj xyuas kev hloov pauv, thiab lwm yam.

Hloov pauv

Kev hloov pauv yog ib qho ntawm cov txheej txheem tseem ceeb ntawm kev thov. Cov ntawm koj uas ua hauj lwm nrog cov cuab yeej xws li TestMace tej zaum twb muaj ib lub tswv yim ntawm peb tab tom tham txog dab tsi. Yog li, qhov sib txawv yog ib txoj hauv kev khaws cov ntaub ntawv sib xws thiab sib txuas lus ntawm cov nodes. Ib qho analogue, piv txwv li, yog ib puag ncig hloov pauv hauv Postman lossis Insomnia. Txawm li cas los xij, peb tau mus ntxiv thiab tsim lub ntsiab lus. Hauv TestMace, qhov sib txawv tuaj yeem raug teeb tsa ntawm qib node. Ib qho. Kuj tseem muaj ib txoj hauv kev rau kev hloov pauv ntawm cov poj koob yawm txwv thiab kev sib tshooj ntawm cov xeeb leej xeeb ntxwv. Tsis tas li ntawd, muaj ntau qhov sib txawv ntawm qhov sib txawv, cov npe ntawm cov khoom sib txawv tau pib nrog $. Nov yog qee qhov ntawm lawv:

  • $prevStep - txuas mus rau qhov hloov pauv ntawm cov node dhau los
  • $nextStep - txuas mus rau qhov sib txawv ntawm cov node tom ntej
  • $parent - tib yam, tab sis tsuas yog rau cov poj koob yawm txwv
  • $response - teb los ntawm server
  • $env - tam sim no ib puag ncig hloov pauv
  • $dynamicVar - dynamic variables tsim thaum lub sij hawm sau ntawv los yog nug execution

$env - Cov no yog qhov tseem ceeb zoo tib yam Project node qib sib txawv, txawm li cas los xij, cov txheej txheem ntawm ib puag ncig hloov pauv nyob ntawm qhov chaw xaiv.

Qhov sib txawv yog nkag los ntawm ${variable_name}
Tus nqi ntawm qhov sib txawv tuaj yeem yog lwm qhov sib txawv, lossis txawm tias tag nrho cov lus qhia. Piv txwv li, qhov hloov pauv url tuaj yeem yog qhov qhia zoo li
http://${host}:${port}/${endpoint}.

Cais, nws tsim nyog sau cia qhov muaj peev xwm ntawm kev muab cov hloov pauv thaum ua tiav tsab ntawv. Piv txwv li, feem ntau yuav tsum tau khaws cov ntaub ntawv tso cai (tus token lossis tag nrho header) uas tuaj ntawm lub server tom qab nkag mus tau zoo. TestMace tso cai rau koj kom txuag tau cov ntaub ntawv no rau hauv qhov hloov pauv hloov pauv ntawm ib qho ntawm cov poj koob yawm txwv. Txhawm rau kom tsis txhob muaj kev sib tsoo nrog cov "zoo li qub" uas twb muaj lawm, cov hloov pauv hloov pauv tau muab tso rau hauv ib qho khoom cais. $dynamicVar.

Cov xwm txheej

Siv tag nrho cov nta saum toj no, koj tuaj yeem khiav tag nrho cov lus nug scripts. Piv txwv li, tsim ib qho chaw -> querying ib qhov chaw -> rho tawm ib qhov chaw. Hauv qhov no, piv txwv li, koj tuaj yeem siv Folder node los pab pawg ntau RequestStep nodes.

Autocompletion thiab qhia qhov tseem ceeb

Rau kev ua haujlwm yooj yim nrog cov hloov pauv (thiab tsis yog xwb) autocompletion yog qhov tsim nyog. Thiab ntawm chav kawm, qhia txog tus nqi ntawm qhov kev qhia kom nws yooj yim dua thiab yooj yim dua los qhia meej tias qhov sib txawv ntawm qhov sib npaug li cas. Qhov no yog qhov tseeb thaum nws zoo dua los pom ib zaug dua li hnov ​​ib puas zaus:

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Nws yog ib nqi sau cia hais tias autocompletion yog siv tsis tau tsuas yog rau variables, tab sis kuj, piv txwv li, rau headers, qhov tseem ceeb ntawm tej headers (piv txwv li, autocompletion rau cov ntsiab lus-Type header), raws tu qauv thiab ntau ntxiv. Cov npe tau hloov kho tas li thaum daim ntawv thov loj tuaj.

Undo / rov ua dua

Undoing / redoing hloov yog ib qho yooj yim heev, tab sis rau qee qhov laj thawj nws tsis siv txhua qhov chaw (thiab cov cuab yeej ua haujlwm nrog APIs tsis muaj kev zam). Tab sis peb tsis yog ib tug ntawm cov!) Peb tau siv undo / redo thoob plaws hauv tag nrho peb tes num, uas tso cai rau koj undo tsis tsuas yog kho ib tug tshwj xeeb node, tab sis kuj nws creation, deletion, txav, thiab lwm yam. Cov haujlwm tseem ceeb tshaj plaws yuav tsum muaj kev lees paub.

Tsim cov kev xeem

Lub Assertion node yog lub luag haujlwm los tsim cov kev xeem. Ib qho ntawm cov yam ntxwv tseem ceeb yog lub peev xwm los tsim cov kev ntsuam xyuas yam tsis muaj programming, siv cov neeg kho ua ke.

Ib qho Assertion node muaj ib txheej ntawm kev lees paub. Txhua qhov kev lees paub muaj nws tus kheej hom; tam sim no muaj ntau hom kev lees paub

  1. Sib piv cov nqi - tsuas yog sib piv 2 qhov tseem ceeb. Muaj ntau tus neeg ua haujlwm sib piv: sib npaug, tsis sib npaug, ntau dua, ntau dua lossis sib npaug, tsawg dua, tsawg dua lossis sib npaug.

  2. Muaj nuj nqis - txheeb xyuas qhov tshwm sim ntawm ib qho substring hauv ib txoj hlua.

  3. XPath - xyuas tias tus xaiv hauv XML muaj qee tus nqi.

  4. JavaScript assertion yog ib qho javascript arbitrary tsab ntawv uas rov qab muaj tseeb ntawm kev vam meej thiab tsis tseeb ntawm kev ua tsis tiav.

Kuv nco ntsoov tias tsuas yog qhov kawg nkaus xwb yuav tsum muaj kev txawj programming los ntawm tus neeg siv, lwm 3 qhov kev lees paub yog tsim los ntawm kev siv graphical interface. Ntawm no, piv txwv li, yog dab tsi lub dialog rau tsim ib tug sib piv qhov tseem ceeb assertion zoo li:

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Lub icing ntawm lub ncuav mog qab zib yog qhov kev tsim sai ntawm kev lees paub los ntawm cov lus teb, tsuas yog saib nws!

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Txawm li cas los xij, cov lus pom zoo no muaj qhov txwv tsis pub muaj, uas koj tuaj yeem xav siv javascript assertion los kov yeej. Thiab ntawm no TestMace kuj muab ib qho chaw xis nyob nrog autocompletion, syntax highlighting thiab txawm ib tug zoo li qub analyzer.

API Description

TestMace tso cai rau koj tsis tsuas yog siv API, tab sis kuj sau nws. Ntxiv mus, cov lus piav qhia nws tus kheej kuj muaj cov qauv hierarchical thiab haum rau cov organically rau hauv qhov project. Tsis tas li ntawd, tam sim no nws muaj peev xwm import API cov lus piav qhia los ntawm Swagger 2.0 / OpenAPI 3.0 hom ntawv. Cov lus piav qhia nws tus kheej tsis yog tsuas yog pw tsaug zog xwb, tab sis yog sib koom ua ke nrog rau lwm qhov ntawm qhov project, tshwj xeeb, nws pib ua tiav ntawm URLs, HTTP headers, cov lus nug tsis, thiab lwm yam yog muaj, thiab yav tom ntej peb npaj yuav ntxiv cov kev xeem. rau kev ua raws li cov lus teb nrog API piav qhia.

Sib koom node

Case: koj xav qhia qhov teeb meem thov lossis txawm tias tag nrho tsab ntawv nrog tus npoj yaig lossis tsuas yog xa mus rau kab laum. TestMace npog cov ntaub ntawv no ib yam nkaus: daim ntawv thov tso cai rau koj mus rau serialize tej node thiab txawm ib tug subtree nyob rau hauv ib tug URL. Luam-paste thiab koj tuaj yeem yooj yim hloov qhov kev thov mus rau lwm lub tshuab lossis qhov project.

Human-readable project cia hom ntawv

Tam sim no, txhua qhov ntawm no yog khaws cia rau hauv ib qho ntaub ntawv sib cais nrog yml txuas ntxiv (raws li cov ntaub ntawv nrog Assertion node), los yog nyob rau hauv ib daim nplaub tshev nrog lub npe ntawm node thiab cov ntaub ntawv index.yml hauv nws.
Piv txwv li, qhov no yog cov ntaub ntawv thov uas peb tau ua hauv kev tshuaj xyuas saum toj no zoo li:

ua 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

Raws li koj tau pom, txhua yam yog meej heev. Yog xav tau, hom ntawv no tuaj yeem kho tau yooj yim manually.

Lub hierarchy ntawm folders nyob rau hauv cov ntaub ntawv system kiag li rov qab lub hierarchy ntawm nodes nyob rau hauv qhov project. Piv txwv li, ib tsab ntawv zoo li:

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Maps cov ntaub ntawv kaw lus rau cov qauv hauv qab no (tsuas yog daim ntawv teev npe hierarchy tau pom, tab sis qhov tseeb yog qhov tseeb)

TestMace - IDE muaj zog rau kev ua haujlwm nrog APIs

Qhov no ua rau cov txheej txheem tshuaj xyuas qhov project yooj yim dua.

Ntshuam los ntawm Postman

Tom qab nyeem tag nrho cov saum toj no, qee cov neeg siv yuav xav sim (txoj cai?) cov khoom tshiab lossis (dab tsi yog ntuj raug txim tsis yog kidding!) siv tag nrho hauv lawv qhov project. Txawm li cas los xij, kev tsiv teb tsaws tuaj yeem nres tau los ntawm ntau qhov kev txhim kho hauv tib Postman. Rau cov xwm txheej zoo li no, TestMace txhawb nqa kev sau los ntawm Postman. Tam sim no, kev xa khoom tsis muaj kev ntsuam xyuas tau txais kev txhawb nqa, tab sis peb tsis txiav txim siab txhawb lawv yav tom ntej.

Cov Tswv Yim

Kuv vam tias ntau tus neeg uas tau nyeem txog qhov no tau nyiam peb cov khoom. Txawm li cas los xij, tsis yog txhua yam! Ua hauj lwm ntawm cov khoom yog nyob rau hauv tag nrho viav vias thiab ntawm no yog ib co nta uas peb npaj yuav ntxiv sai sai no.

Huab sync

Ib qho kev thov ntau tshaj plaws. Nyob rau lub sijhawm no, peb tawm tswv yim siv cov kev tswj hwm version rau synchronization, uas peb tab tom ua cov hom ntawv zoo dua rau hom kev cia no. Txawm li cas los xij, qhov kev ua haujlwm no tsis haum rau txhua tus, yog li peb npaj yuav ntxiv cov txheej txheem synchronization paub rau ntau tus los ntawm peb cov servers.

CLI

Raws li tau hais los saum no, cov khoom lag luam qib IDE tsis tuaj yeem ua yam tsis muaj txhua yam kev koom ua ke nrog cov ntawv thov lossis cov haujlwm ua haujlwm. CLI yog qhov xav tau los ua ke cov kev xeem sau hauv TestMace rau hauv cov txheej txheem txuas ntxiv mus. Ua hauj lwm ntawm CLI yog nyob rau hauv tag nrho viav vias; thaum ntxov versions yuav tso lub project nrog ib tug yooj yim console qhia. Yav tom ntej peb npaj yuav ntxiv cov ntawv tshaj tawm hauv JUnit hom ntawv.

Plugin qhov system

Txawm hais tias txhua lub zog ntawm peb lub cuab yeej, cov txheej txheem uas xav tau kev daws teeb meem tsis muaj kev txwv. Tom qab tag nrho, muaj cov dej num uas tshwj xeeb rau ib qhov project. Tias yog vim li cas yav tom ntej peb npaj yuav ntxiv SDK rau kev tsim plugins thiab txhua tus tsim tawm yuav tuaj yeem ntxiv cov haujlwm rau lawv nyiam.

Kev nthuav dav ntawm cov node hom

Cov kab no tsis suav nrog txhua kis uas tus neeg siv xav tau. Nodes uas npaj yuav ntxiv:

  • Script node - hloov thiab tso cov ntaub ntawv siv js thiab cov API sib raug. Siv hom node, koj tuaj yeem ua tej yam xws li kev thov ua ntej thiab tom qab thov tsab ntawv hauv Postman.
  • GraphQL node - txhawb nqa graphql
  • Custom assertion node - yuav tso cai rau koj nthuav cov txheej txheem uas twb muaj lawm hauv qhov project
    Lawm, qhov no tsis yog daim ntawv kawg; nws yuav raug hloov kho tas li vim, ntawm lwm yam, koj cov lus tawm tswv yim.

FAQ

Koj txawv ntawm Postman li cas?

  1. Lub tswv yim ntawm nodes, uas tso cai rau koj mus yuav luag endlessly scale lub functionality ntawm qhov project
  2. Tib neeg-nyeem tau qhov project hom nrog txuag nws nyob rau hauv cov ntaub ntawv system, uas yooj yim ua hauj lwm siv version tswj systems
  3. Muaj peev xwm tsim cov kev xeem yam tsis muaj kev ua haujlwm thiab kev txhawb nqa js ntau dua hauv cov ntawv xeem (autocompletion, static analyzer)
  4. Advanced autocompletion thiab tseem ceeb ntawm tus nqi tam sim no ntawm kev hloov pauv

Qhov no puas yog cov khoom lag luam qhib?

Tsis yog, tam sim no cov peev txheej raug kaw, tab sis yav tom ntej peb tab tom xav txog qhov muaj peev xwm qhib cov peev txheej

Koj nyob ntawm dab tsi?)

Nrog rau cov dawb version, peb npaj yuav tso tawm ib tug them version ntawm cov khoom. Nws yuav feem ntau suav nrog tej yam uas yuav tsum muaj rau sab server, piv txwv li, synchronization.

xaus

Peb qhov project yog txav los ntawm leaps thiab ciam teb rau kev tso tawm ruaj khov. Txawm li cas los xij, cov khoom tuaj yeem siv tau, thiab cov lus pom zoo los ntawm peb cov neeg siv thaum ntxov yog pov thawj ntawm qhov no. Peb nquag sau cov lus tawm tswv yim, vim tias tsis muaj kev koom tes nrog zej zog nws tsis tuaj yeem tsim cov cuab yeej zoo. Koj tuaj yeem nrhiav peb ntawm no:

Official lub website

Telegram

slack

Facebook

Teeb meem tracker

Peb tos ntsoov rau koj qhov kev xav tau thiab cov lus qhia!

Tau qhov twg los: www.hab.com

Ntxiv ib saib