Vim li cas TestMace zoo dua Postman

Vim li cas TestMace zoo dua Postman

Nyob zoo sawv daws, ntawm no koj mus TestMace! Tej zaum ntau tus neeg paub txog peb los ntawm ntawm peb yav dhau los cov ntawv. Rau cov neeg uas nyuam qhuav tuaj koom: peb tab tom tsim IDE ua haujlwm nrog TestMace API. Cov lus nug nquag nquag nug thaum piv TestMace rau cov khoom sib tw yog "Koj txawv li cas ntawm Postman?" Peb txiav txim siab tias nws yog lub sijhawm los muab cov lus teb ntxaws rau lo lus nug no. Hauv qab no peb tau piav qhia peb qhov zoo dua Tus xaib.

Spliting rau hauv nodes

Yog tias koj ua haujlwm nrog Postman, ces koj paub tias qhov kev thov interface muaj tag nrho cov haujlwm tsim nyog. Muaj cov ntawv sau, xeem, thiab, qhov tseeb, cov lus nug lawv tus kheej. Qhov no ua rau nws yooj yim dua rau cov pib tshiab, tab sis nyob rau hauv cov xwm txheej loj no txoj hauv kev tsis hloov pauv. Yuav ua li cas yog tias koj xav tsim ntau cov lus nug thiab ua kev sib sau ua ke rau lawv? Yuav ua li cas yog tias koj xav ua ib tsab ntawv yam tsis muaj kev thov lossis ntau cov ntawv sau sib cais hauv kab? Tom qab tag nrho, nws yuav yog ib lub tswv yim zoo los cais cov kev xeem los ntawm cov ntawv siv hluav taws xob tsis tu ncua. Tsis tas li ntawd, "ntxiv tag nrho cov haujlwm ua haujlwm rau hauv ib qho" txoj hauv kev tsis tuaj yeem ua tau - lub interface sai dhau.

TestMace pib faib tag nrho cov haujlwm ua haujlwm rau ntau hom ntawm nodes. Koj puas xav thov? Nws yog rau koj thov kauj ruam node Koj puas xav sau ib tsab ntawv? Nws yog rau koj tsab ntawv node Xav tau kev kuaj? Thov - Kev lees paub node Auj, koj tseem tuaj yeem qhwv tag nrho cov khoom no rau hauv nplaub tshev node Thiab tag nrho cov no tuaj yeem yooj yim ua ke nrog ib leeg. Txoj hauv kev no tsis tsuas yog hloov pauv tau yooj yim, tab sis kuj, raws li lub hauv paus ntsiab lus ntawm ib lub luag haujlwm, tso cai rau koj siv tsuas yog yam koj xav tau tam sim no. Vim li cas kuv thiaj xav tau cov ntawv sau thiab cov ntawv xeem yog tias kuv tsuas yog xav thov?

Human-readable project format

Muaj lub tswv yim sib txawv ntawm TestMace thiab Postman hauv txoj kev uas lawv khaws cia. Hauv Postman, txhua qhov kev thov raug muab khaws cia rau hauv qhov chaw khaws cia hauv zos. Yog tias muaj qhov xav tau los sib qhia kev thov ntawm ntau tus neeg siv, ces koj yuav tsum siv cov built-in synchronization. Qhov tseeb, qhov no yog ib qho kev lees paub feem ntau, tab sis tsis yog tsis muaj nws qhov tsis zoo. Yuav ua li cas txog kev ruaj ntseg cov ntaub ntawv? Tom qab tag nrho, txoj cai ntawm qee lub tuam txhab yuav tsis tso cai khaws cov ntaub ntawv nrog cov neeg thib peb. Txawm li cas los xij, peb xav tias TestMace muaj qee yam zoo dua los muab! Thiab lub npe ntawm qhov kev txhim kho no yog "tib neeg-nyeem tau qhov project hom."

Cia peb pib nrog qhov tseeb tias hauv TestMace, hauv paus ntsiab lus, muaj ib qho "project" qhov chaw. Thiab daim ntawv thov tau pib tsim nrog lub qhov muag los khaws cov haujlwm hauv kev tswj hwm cov txheej txheem: tsob ntoo qhov project yuav luag ib-rau-ib qhov projected mus rau cov qauv ntaub ntawv, yaml yog siv los ua hom ntawv cia (tsis muaj cov kab txuas ntxiv thiab cov cim), thiab cov cov ntaub ntawv sawv cev ntawm txhua lub node tau piav qhia meej hauv cov ntaub ntawv nrog cov lus pom. Tab sis nyob rau hauv feem ntau koj yuav tsis saib nyob rau ntawd - tag nrho cov npe teb muaj lub npe logic.

Qhov no muab dab tsi rau tus neeg siv? Qhov no tso cai rau koj los hloov cov pab pawg ua haujlwm ntws tau yooj yim, siv cov kev paub paub. Piv txwv li, cov neeg tsim khoom tuaj yeem khaws ib qhov project hauv tib qhov chaw cia khoom raws li lub backend. Hauv cov ceg ntoo, ntxiv rau kev hloov pauv cov cai hauv paus nws tus kheej, tus tsim tawm tuaj yeem kho cov lus nug uas twb muaj lawm thiab cov ntawv xeem. Tom qab cog lus hloov pauv rau qhov chaw cia khoom (git, svn, mercurial - xijpeem koj nyiam tshaj plaws), CI (koj nyiam, tsis raug yuam los ntawm leej twg) pib peb cov khoom siv hluav taws xob. testmac-cli, thiab daim ntawv tshaj tawm tau txais tom qab ua tiav (piv txwv li, hauv junit hom, uas kuj tau txais kev txhawb nqa hauv testmace-cli) raug xa mus rau qhov tsim nyog. Thiab qhov teeb meem kev ruaj ntseg saum toj no tsis muaj teeb meem ntxiv lawm.

Raws li koj tuaj yeem pom, TestMace tsis cuam tshuam nws cov ecosystem thiab paradigm. Hloov chaw, nws haum yooj yim rau hauv cov txheej txheem tsim.

Dynamic Variables

TestMace ua raws li lub tswv yim tsis muaj code: yog tias muaj teeb meem tuaj yeem daws tsis tau siv code, peb sim muab lub sijhawm no. Ua hauj lwm nrog cov variables yog raws nraim qhov functionality nyob rau hauv feem ntau koj yuav ua tau yam tsis muaj programming.

Piv txwv: peb tau txais cov lus teb los ntawm tus neeg rau zaub mov, thiab peb xav khaws ib feem ntawm cov lus teb rau hauv qhov sib txawv. Hauv Postman, hauv tsab ntawv xeem (uas yog qhov txawv ntawm nws tus kheej) peb yuav sau qee yam xws li:

var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("data", jsonData.data);

Tab sis nyob rau hauv peb lub tswv yim, sau ib tsab ntawv rau xws li ib tug yooj yim thiab nquag siv scenario zoo li redundant. Yog li ntawd, hauv TestMace nws muaj peev xwm muab ib daim ntawm cov lus teb rau qhov sib txawv uas siv cov graphical interface. Saib seb nws yooj yim npaum li cas:

Vim li cas TestMace zoo dua Postman

Thiab tam sim no nrog txhua qhov kev thov no qhov hloov pauv hloov pauv yuav hloov kho. Tab sis koj tuaj yeem tawm tsam, sib cav tias Postman txoj hauv kev hloov pauv tau yooj yim dua thiab tso cai rau koj tsis yog ua haujlwm xwb, tab sis kuj ua qee qhov ua ntej. Nov yog yuav hloov pauv qhov piv txwv yav dhau los:

var jsonData = JSON.parse(responseBody);
postman.setEnvironmentVariable("data", CryptoJS.MD5(jsonData.data));

Zoo, rau lub hom phiaj no TestMace muaj tsab ntawv node, uas npog qhov scenario. Txhawm rau rov tsim dua cov ntaub ntawv dhau los, tab sis twb tau ua tiav los ntawm TestMace, koj yuav tsum tsim cov ntawv sau raws li qhov kev thov thiab siv cov cai hauv qab no ua ib tsab ntawv:

const data = tm.currentNode.prev.response.body.data;
tm.currentNode.parent.setDynamicVar('data', crypto.MD5(data));

Raws li koj tuaj yeem pom, muaj pes tsawg leeg ntawm cov nodes tau txais txiaj ntsig zoo ntawm no thiab. Thiab rau cov ntaub ntawv yooj yim xws li tau piav qhia saum toj no, koj tuaj yeem muab cov lus qhia yooj yim ${crypto.MD5($response.data)} variable tsim los ntawm GUI!

Tsim cov kev xeem ntawm GUI

Postman tso cai rau koj los tsim cov kev ntsuam xyuas los ntawm kev sau ntawv (nyob rau hauv rooj plaub ntawm Postman, qhov no yog JavaScript). Txoj hauv kev no muaj ntau qhov zoo - yuav luag tsis muaj kev txwv yooj yim, muaj cov kev daws teeb meem npaj txhij, thiab lwm yam.

Txawm li cas los xij, qhov tseeb yog feem ntau xws li (peb tsis zoo li ntawd, lub neej zoo li ntawd) uas tus neeg sim tsis muaj kev txawj ua haujlwm, tab sis nws xav kom muaj txiaj ntsig rau pab pawg tam sim no. Rau cov xwm txheej zoo li no, ua raws li lub tswv yim tsis muaj code, TestMace tso cai rau koj los tsim cov kev sim yooj yim los ntawm GUI yam tsis muaj kev siv cov ntawv sau. Ntawm no, piv txwv li, yog dab tsi cov txheej txheem ntawm kev tsim ib qho kev xeem uas sib piv cov nqi rau kev sib npaug zoo li:

Vim li cas TestMace zoo dua Postman

Txawm li cas los xij, tsim cov kev ntsuam xyuas hauv graphical editor tsis tshem tawm qhov ua tau sau ntawv xeem nyob rau hauv code. Tag nrho tib lub tsev qiv ntawv nyob ntawm no raws li nyob rau hauv tsab ntawv node, thiab chai rau kev xeem ntawv.

Cov xwm txheej feem ntau tshwm sim thaum qee cov lus nug lossis txawm tias tag nrho cov ntawv yuav tsum tau ua ntau zaus hauv ntau qhov chaw ntawm qhov project. Ib qho piv txwv ntawm qhov kev thov no tuaj yeem yog kev cai ntau theem kev tso cai, nqa ib puag ncig rau lub xeev xav tau, thiab lwm yam. Feem ntau, hais lus ntawm cov lus programming, peb xav kom muaj cov haujlwm uas tuaj yeem rov qab siv tau rau ntau qhov chaw ntawm daim ntawv thov. Hauv TestMace qhov haujlwm no yog ua los ntawm txuas node Nws yog ib qho yooj yim mus use:
1) tsim cov lus nug lossis tsab ntawv
2) tsim ib qho ntawm hom Link
3) nyob rau hauv cov tsis, qhia ib qhov txuas mus rau tsab ntawv tsim nyob rau hauv thawj kauj ruam

Nyob rau hauv ib tug ntau dua version, koj muaj peev xwm qhia meej uas dynamic variables los ntawm tsab ntawv yog kis mus rau ib tug siab dua cov txheeb ze rau qhov txuas. Suab tsis meej pem? Cia peb hais tias peb tsim ib Folder nrog lub npe tsim-post, nyob rau hauv uas ib tug dynamic sib txawv yog muab rau node postId. Tam sim no hauv Link node tsim-post-link koj tuaj yeem qhia meej meej tias qhov sib txawv postId muab rau ib tug yawm txiv tsim-post-link. Cov txheej txheem no (dua, hauv cov lus programming) tuaj yeem siv los xa cov txiaj ntsig los ntawm "kev ua haujlwm". Nyob rau hauv dav dav, nws yog txias, DRY yog nyob rau hauv tag nrho viav vias thiab dua tsis muaj ib tug kab ntawm code puas lawm.

Vim li cas TestMace zoo dua Postman

Raws li rau Postman, muaj qhov tshwj xeeb thov rau kev thov rov siv dua dai txij li xyoo 2015, thiab zoo li muaj txawm qee cov lus qhiatias lawv tab tom ua haujlwm rau qhov teeb meem no. Nyob rau hauv nws daim ntawv tam sim no, Postman, tau kawg, muaj peev xwm hloov cov xov ntawm kev tua, uas nyob rau hauv txoj kev xav tej zaum yuav ua rau nws muaj peev xwm ua tau raws li tus cwj pwm zoo sib xws, tab sis qhov no yog ntau ntawm cov qias neeg hack dua li kev ua haujlwm tiag tiag.

Lwm qhov sib txawv

  • Kev tswj ntau dua ntawm cov kev hloov pauv. Qhov tsawg tshaj plaws nyob rau hauv uas qhov sib txawv tuaj yeem txhais tau hauv Postman yog sau. TestMace tso cai rau koj los txhais cov kev hloov pauv rau cov lus nug lossis cov ntawv tais ceev tseg. Nyob rau hauv Postman Share collection tso cai rau koj mus export tsuas collections, thaum nyob rau hauv TestMace sib koom ua hauj lwm rau tej node
  • TestMace txhawb nqa cov headers qub, uas tuaj yeem hloov mus rau cov lus nug me nyuam los ntawm lub neej ntawd. Postman muaj qee yam hais txog qhov no: hauj lwm, thiab nws txawm raug kaw, tab sis nws tau muab los ua kev daws teeb meem ... siv cov ntawv sau. Hauv TestMace, qhov no yog txhua yam teeb tsa los ntawm GUI thiab muaj kev xaiv los xaiv lov tes taw cov npe qub hauv cov xeeb leej xeeb ntxwv.
  • Undo / Rov ua dua. Ua haujlwm tsis tsuas yog thaum kho cov nodes, tab sis kuj thaum tsiv, rho tawm, hloov npe thiab lwm yam haujlwm uas hloov cov qauv ntawm qhov project.
  • Cov ntaub ntawv txuas nrog rau kev thov dhau los ua ib feem ntawm qhov project thiab khaws cia nrog nws, thaum ua kom zoo kawg nkaus synchronized, tsis zoo li Postman. (Yog lawm, koj tsis tas yuav manually xaiv cov ntaub ntawv txhua zaus koj pib thiab hloov mus rau cov npoj yaig hauv cov ntaub ntawv)

Cov yam ntxwv uas twb nyob ntawm txoj kev

Peb tsis tuaj yeem tiv thaiv qhov kev ntxias kom nqa daim ntaub thaiv kev zais cia ntawm qhov kev tso tawm tom ntej, tshwj xeeb tshaj yog thaum cov haujlwm ua haujlwm tau qab heev thiab twb tau ua ntej tso polishing. Yog li ntawd, cia peb ntsib.

Zog

Raws li koj paub, Postman siv lub npe hu ua dynamic variables los tsim kom muaj nuj nqis. Cov npe ntawm lawv yog impressive thiab feem ntau ntawm cov haujlwm yog siv los tsim cov txiaj ntsig cuav. Piv txwv li, los tsim ib qho email random koj yuav tsum sau:

{{$randomEmail}}

Txawm li cas los xij, vim tias cov no yog cov hloov pauv (txawm tias muaj zog), lawv tsis tuaj yeem siv los ua haujlwm: lawv tsis yog parameterizable, yog li nws yuav tsis muaj peev xwm coj tus hash los ntawm txoj hlua.

Peb npaj yuav ntxiv "kev ncaj ncees" ua haujlwm rau TestMace. Txoj cai sab hauv ${} nws yuav ua tau tsis yog tsuas yog nkag mus rau qhov sib txawv, tab sis kuj hu rau lub luag haujlwm. Cov. yog tias koj xav tau los tsim cov email cuav tsis zoo, peb tsuas yog sau

${faker.internet.email()}

Ntxiv nrog rau qhov tseeb tias nws yog ib txoj haujlwm, koj yuav pom tias nws tuaj yeem hu rau tus qauv ntawm ib qho khoom. Thiab tsis yog ib daim ntawv teev loj loj ntawm cov kev hloov pauv hloov pauv, peb muaj cov txheej txheem ntawm cov khoom sib xyaw ua ke.

Yuav ua li cas yog tias peb xav xam tus hash ntawm ib txoj hlua? Yooj yim!

${crypto.MD5($dynamicVar.data)}

Koj yuav pom tias koj tuaj yeem dhau qhov hloov pauv raws li qhov ntsuas! Lub sijhawm no, tus nyeem ntawv xav paub yuav xav tias qee yam tsis raug ...

Siv JavaScript hauv Cov Lus Qhia

... Thiab rau qhov laj thawj zoo! Thaum cov kev cai rau kev ua haujlwm tau tsim, peb mam li nco dheev tuaj txog qhov xaus tias siv tau javascript yuav tsum tau sau rau hauv kab lus. Yog li tam sim no koj muaj kev ywj pheej sau cov kab lus xws li:

${1 + '' + crypto.MD5('asdf')}

Thiab tag nrho cov no tsis muaj scripts, txoj cai nyob rau hauv lub input teb!

Raws li rau Postman, ntawm no koj tsuas tuaj yeem siv qhov sib txawv, thiab thaum koj sim sau cov lus qhia me ntsis, tus neeg siv tau foom tsis zoo thiab tsis kam suav nws.

Vim li cas TestMace zoo dua Postman

Advanced autocompletion

Tam sim no TestMace muaj tus qauv autocompletion uas zoo li no:

Vim li cas TestMace zoo dua Postman

Ntawm no, ntxiv rau txoj kab pib ua tiav, nws tau qhia tias kab no yog dab tsi. Cov txheej txheem no tsuas yog ua haujlwm hauv cov kab lus uas nyob ib puag ncig los ntawm cov khoom siv ${}.

Raws li koj tuaj yeem pom, cov cim pom tau ntxiv uas qhia txog hom kev sib txawv (piv txwv li, hlua, tus lej, array, thiab lwm yam). Koj tuaj yeem hloov pauv hom autocompletion (piv txwv li, koj tuaj yeem xaiv autocompletion nrog cov hloov pauv lossis cov headers). Tab sis txawm tias qhov no tsis yog qhov tseem ceeb tshaj plaws!

Ua ntej, autocompletion ua haujlwm txawm nyob rau hauv kab lus (qhov twg ua tau). Nov yog qhov nws zoo li:

Vim li cas TestMace zoo dua Postman

Thiab qhov thib ob, autocompletion tam sim no muaj nyob rau hauv cov ntawv sau. Saib seb nws ua haujlwm li cas!

Vim li cas TestMace zoo dua Postman

Tsis muaj qhov taw tes rau kev sib piv qhov kev ua haujlwm no nrog Postman - autocompletion muaj tsuas yog rau cov npe zoo li qub ntawm cov hloov pauv, cov ntawv sau thiab lawv cov txiaj ntsig (kho kuv yog tias kuv tsis nco qab qee yam). Scripts tsis yog autocompleted :)

xaus

Lub kaum hli ntuj cim ib xyoos txij li thaum pib ntawm peb cov khoom tsim. Lub sijhawm no, peb tau tswj hwm ntau yam thiab, qee qhov, tau ntes nrog peb cov neeg sib tw. Tab sis ua li ntawd, peb lub hom phiaj yog ua kom yooj yim rau kev ua haujlwm nrog APIs. Peb tseem muaj ntau txoj haujlwm los ua, ntawm no yog ib qho kev npaj rau kev txhim kho peb qhov project rau xyoo tom ntej: https://testmace.com/roadmap.

Koj cov lus pom zoo yuav tso cai rau peb mus rau qhov zoo tshaj plaws ntawm kev nthuav dav ntawm cov yam ntxwv, thiab koj qhov kev txhawb nqa muab peb lub zog thiab kev ntseeg siab tias peb ua qhov yog. Nws thiaj li tshwm sim tias hnub no yog hnub tseem ceeb rau peb qhov project - hnub TestMace tau tshaj tawm rau ProductHunt. Thov txhawb peb qhov project, nws tseem ceeb heev rau peb. Ntxiv mus, muaj kev txaus siab rau ntawm peb PH nplooj ntawv hnub no, thiab nws yog txwv

Tau qhov twg los: www.hab.com

Ntxiv ib saib