Kwa nini TestMace ni bora kuliko Postman

Kwa nini TestMace ni bora kuliko Postman

Hello kila mtu, hapa kwenda TestMace! Labda watu wengi wanajua kutuhusu yetu uliopita makala. Kwa wale ambao wamejiunga hivi punde: tunatengeneza IDE ili kufanya kazi na TestMace API. Swali linaloulizwa sana wakati wa kulinganisha TestMace na bidhaa shindani ni "Je, una tofauti gani na Postman?" Tuliamua kuwa ni wakati wa kutoa jibu la kina kwa swali hili. Hapo chini tumeelezea faida zetu Postman.

Kugawanyika katika nodi

Ikiwa unafanya kazi na Postman, basi unajua kwamba interface ya ombi ina utendaji wote muhimu. Kuna maandishi, vipimo, na, kwa kweli, maswali yenyewe. Hii inafanya iwe rahisi kwa Kompyuta, lakini katika hali kubwa mbinu hii haiwezi kubadilika. Je, ikiwa ungependa kuunda hoja kadhaa na kuzijumlisha? Je, ikiwa unataka kutekeleza hati bila ombi au hati kadhaa zilizotenganishwa kimantiki mfululizo? Baada ya yote, itakuwa wazo nzuri kutenganisha majaribio kutoka kwa maandishi ya matumizi ya kawaida. Kwa kuongezea, mbinu ya "ongeza utendakazi wote katika nodi moja" haiwezi kupunguzwa - kiolesura haraka kinajazwa.

TestMace mwanzoni inagawanya utendakazi wote katika aina tofauti za nodi. Je, ungependa kutuma ombi? Ni kwa ajili yako ombi hatua nodi Je, unataka kuandika hati? Ni kwa ajili yako Muswada nodi Je, unahitaji vipimo? Tafadhali - Madai nodi Ndio, bado unaweza kumalizia jambo hili lote folder nodi Na yote haya yanaweza kuunganishwa kwa urahisi na kila mmoja. Njia hii sio tu rahisi sana, lakini pia, kwa mujibu wa kanuni ya wajibu mmoja, inakuwezesha kutumia tu kile unachohitaji kwa sasa. Kwa nini ninahitaji maandishi na vipimo ikiwa ninataka tu kufanya ombi?

Muundo wa mradi unaoweza kusomeka na binadamu

Kuna tofauti ya kimawazo kati ya TestMace na Postman kwa jinsi zinavyohifadhiwa. Katika Postman, maombi yote yanahifadhiwa mahali fulani katika hifadhi ya ndani. Ikiwa kuna haja ya kushiriki maombi kati ya watumiaji kadhaa, basi unahitaji kutumia maingiliano yaliyojengwa. Kwa kweli, hii ni mbinu inayokubaliwa kwa ujumla, lakini sio bila vikwazo vyake. Vipi kuhusu usalama wa data? Baada ya yote, sera ya makampuni fulani inaweza kuruhusu kuhifadhi data na wahusika wengine. Walakini, tunadhani TestMace ina kitu bora zaidi cha kutoa! Na jina la uboreshaji huu ni "muundo wa mradi unaoweza kusomeka na binadamu."

Wacha tuanze na ukweli kwamba katika TestMace, kimsingi, kuna chombo cha "mradi". Na maombi yalitengenezwa hapo awali kwa jicho la kuhifadhi miradi katika mifumo ya udhibiti wa toleo: mti wa mradi unakadiriwa moja kwa moja kwenye muundo wa faili, yaml hutumiwa kama umbizo la kuhifadhi (bila mabano ya ziada na koma), na uwakilishi wa faili wa kila nodi umeelezewa kwa kina katika hati na maoni . Lakini katika hali nyingi hutaangalia hapo - majina yote ya uwanja yana majina yenye mantiki.

Hii inampa nini mtumiaji? Hii inakuwezesha kubadilisha mtiririko wa kazi wa timu kwa urahisi sana, kwa kutumia mbinu zinazojulikana. Kwa mfano, wasanidi programu wanaweza kuhifadhi mradi katika hazina sawa na mazingira ya nyuma. Katika matawi, pamoja na kubadilisha msingi wa msimbo yenyewe, msanidi programu anaweza kusahihisha maandishi na majaribio yaliyopo ya hoja. Baada ya kufanya mabadiliko kwenye hazina (git, svn, mercurial - chochote unachopenda zaidi), CI (unayoipenda, haijawekwa na mtu yeyote) inazindua matumizi yetu ya koni. testmace-cli, na ripoti iliyopokelewa baada ya utekelezaji (kwa mfano, katika umbizo la junit, ambalo pia linatumika katika testmace-cli) inatumwa kwa mfumo unaofaa. Na suala la usalama lililotajwa hapo juu sio tatizo tena.

Kama unavyoona, TestMace hailazimishi mfumo wake wa ikolojia na dhana. Badala yake, inafaa kwa urahisi katika michakato iliyoanzishwa.

Vigeu Vinavyobadilika

TestMace inafuata dhana ya hakuna msimbo: ikiwa tatizo linaweza kutatuliwa bila kutumia msimbo, tunajaribu kutoa fursa hii. Kufanya kazi na vijiti ndio aina ya utendaji ambapo katika hali nyingi unaweza kufanya bila programu.

Mfano: tulipokea jibu kutoka kwa seva, na tunataka kuhifadhi sehemu ya jibu kwenye kigezo. Katika Postman, kwenye hati ya jaribio (ambayo ni ya kushangaza yenyewe) tungeandika kitu kama:

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

Lakini kwa maoni yetu, kuandika hati kwa hali rahisi na inayotumiwa mara kwa mara inaonekana kuwa ngumu. Kwa hiyo, katika TestMace inawezekana kugawa kipande cha jibu kwa kutofautiana kwa kutumia kiolesura cha picha. Angalia jinsi ilivyo rahisi:

Kwa nini TestMace ni bora kuliko Postman

Na sasa kwa kila ombi utofauti huu wenye nguvu utasasishwa. Lakini unaweza kupinga, ukisema kwamba mbinu ya Postman ni rahisi zaidi na hukuruhusu sio tu kufanya kazi, lakini pia kufanya usindikaji wa mapema. Hapa kuna jinsi ya kurekebisha mfano uliopita:

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

Kweli, kwa kusudi hili TestMace ina Muswada nodi, ambayo inashughulikia hali hii. Ili kuzalisha tena kesi iliyotangulia, lakini tayari imetekelezwa na TestMace, unahitaji kuunda nodi ya hati kufuatia ombi na utumie nambari ifuatayo kama hati:

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

Kama unaweza kuona, muundo wa nodi ulitumika vizuri hapa pia. Na kwa kesi rahisi kama ilivyoelezwa hapo juu, unaweza tu kugawa usemi huo ${crypto.MD5($response.data)} tofauti iliyoundwa kupitia GUI!

Kuunda majaribio kupitia GUI

Postman hukuruhusu kuunda majaribio kwa kuandika hati (katika kesi ya Postman, hii ni JavaScript). Njia hii ina faida nyingi - karibu kubadilika kwa ukomo, upatikanaji wa ufumbuzi tayari, nk.

Walakini, ukweli mara nyingi ni kama (hatuko hivyo, maisha ni hivyo) kwamba anayejaribu hana ustadi wa kupanga, lakini angependa kuleta faida kwa timu hivi sasa. Kwa hali kama hizi, kufuatia dhana ya hakuna msimbo, TestMace hukuruhusu kuunda majaribio rahisi kupitia GUI bila kuamua kuandika hati. Hapa, kwa mfano, ndivyo mchakato wa kuunda jaribio ambalo linalinganisha maadili ya usawa inaonekana kama:

Kwa nini TestMace ni bora kuliko Postman

Walakini, kuunda vipimo katika mhariri wa picha hakuondoi uwezekano kuandika vipimo kwa kanuni. Maktaba zote sawa ziko hapa kama kwenye nodi ya hati, na chai kwa ajili ya kuandika mitihani.

Mara nyingi hali hutokea wakati swala fulani au hata hati nzima inahitaji kutekelezwa mara kadhaa katika sehemu tofauti za mradi. Mfano wa maombi kama haya inaweza kuwa idhini ya hatua nyingi, kuleta mazingira kwa hali inayotaka, nk. Kwa ujumla, tukizungumza kulingana na lugha za programu, tungependa kuwa na vitendaji ambavyo vinaweza kutumika tena katika sehemu tofauti za programu. Katika TestMace kazi hii inafanywa na kiungo nodi Ni rahisi sana kutumia:
1) tengeneza swali au hati
2) unda nodi ya aina ya Kiungo
3) katika vigezo, taja kiungo kwa hati iliyoundwa katika hatua ya kwanza

Katika toleo la juu zaidi, unaweza kubainisha ni vigeu gani vinavyobadilika kutoka kwa hati vinavyopitishwa kwa kiwango cha juu kinachohusiana na kiungo. Sauti inachanganya? Wacha tuseme tumeunda Folda iliyo na jina kuunda-chapisho, ambamo kibadilishi chenye nguvu kimepewa nodi hii postId. Sasa katika nodi ya Kiungo tengeneza-post-kiungo unaweza kubainisha wazi kuwa kutofautisha postId kupewa babu tengeneza-post-kiungo. Utaratibu huu (tena, katika lugha ya programu) unaweza kutumika kurudisha matokeo kutoka kwa "kazi". Kwa ujumla, ni baridi, DRY inaendelea kikamilifu na tena hakuna mstari mmoja wa kanuni ulioharibiwa.

Kwa nini TestMace ni bora kuliko Postman

Kuhusu Postman, kuna ombi la kipengele cha kutumia tena maombi kunyongwa tangu 2015, na inaonekana kuna hata baadhi ya vidokezokwamba wanalifanyia kazi tatizo hili. Katika hali yake ya sasa, Postman, bila shaka, ana uwezo wa kubadilisha thread ya utekelezaji, ambayo kwa nadharia pengine inafanya uwezekano wa kutekeleza tabia kama hiyo, lakini hii ni zaidi ya hack chafu kuliko mbinu ya kweli ya kufanya kazi.

Tofauti nyingine

  • Udhibiti mkubwa zaidi juu ya upeo wa vigezo. Upeo mdogo zaidi ambao kigezo kinaweza kufafanuliwa katika Postman ni mkusanyiko. TestMace hukuruhusu kufafanua vigeu vya hoja au folda yoyote. Katika mkusanyiko wa Kushiriki kwa Postman hukuruhusu kuhamisha mikusanyiko pekee, huku katika TestMace kushiriki hufanya kazi kwa nodi yoyote
  • TestMace inasaidia vichwa vya kurithi, ambayo inaweza kubadilishwa kuwa hoja za watoto kwa chaguo-msingi. Postman ana kitu kuhusu hili: kazi, na hata imefungwa, lakini imetolewa kama suluhisho... tumia maandishi. Katika TestMace, hii yote imesanidiwa kupitia GUI na kuna chaguo la kuzima kwa hiari vichwa vilivyorithiwa katika vizazi maalum.
  • Tendua/Rudia. Haifanyi kazi tu wakati wa kuhariri nodi, lakini pia wakati wa kusonga, kufuta, kubadilisha jina na shughuli zingine zinazobadilisha muundo wa mradi.
  • Faili zilizoambatishwa kwa maombi huwa sehemu ya mradi na huhifadhiwa nayo, huku zikisawazishwa kikamilifu, tofauti na Postman. (Ndiyo, huhitaji tena kuchagua faili mwenyewe kila unapoanzisha na kuzihamisha kwa wenzako kwenye kumbukumbu)

Vipengele ambavyo tayari viko njiani

Hatukuweza kupinga kishawishi cha kuinua pazia la usiri juu ya matoleo yanayofuata, hasa wakati utendakazi ni wa kitamu sana na tayari unafanyiwa ung'arishaji kabla ya kutolewa. Kwa hiyo, tukutane.

Kazi

Kama unavyojua, Postman hutumia kinachojulikana kama vigeuzo vinavyobadilika ili kutoa maadili. Orodha yao ni ya kuvutia na idadi kubwa ya vitendakazi hutumika kuzalisha thamani ghushi. Kwa mfano, ili kutoa barua pepe bila mpangilio unahitaji kuandika:

{{$randomEmail}}

Walakini, kwa kuwa hizi ni anuwai (ingawa ni za nguvu), haziwezi kutumika kama kazi: haziwezi kutambulika, kwa hivyo haitawezekana kuchukua heshi kutoka kwa kamba.

Tunapanga kuongeza vitendaji "za uaminifu" kwenye TestMace. Papo hapo ndani ${} itawezekana sio tu kupata kitofauti, lakini pia kupiga simu kitendakazi. Wale. ikiwa unahitaji kutoa barua pepe ya uwongo yenye sifa mbaya, tutaandika tu

${faker.internet.email()}

Mbali na ukweli kwamba ni kazi, utaona kwamba inawezekana kuita njia kwenye kitu. Na badala ya orodha kubwa bapa ya vigeu vinavyobadilika, tuna seti ya vitu vilivyowekwa kimantiki.

Je, ikiwa tunataka kukokotoa heshi ya mfuatano? Kwa urahisi!

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

Utagundua kuwa unaweza kupitisha anuwai kama vigezo! Kwa wakati huu, msomaji mdadisi anaweza kushuku kuwa kuna kitu kibaya...

Kutumia JavaScript katika Maneno

... Na kwa sababu nzuri! Wakati mahitaji ya utendakazi yalipokuwa yakiundwa, ghafla tulifikia hitimisho kwamba hati sahihi ya Java inapaswa kuandikwa kwa maneno. Kwa hivyo sasa uko huru kuandika maneno kama:

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

Na haya yote bila maandishi, kwenye uwanja wa uingizaji!

Kuhusu Postman, hapa unaweza kutumia vigeu pekee, na unapojaribu kuandika usemi mdogo, mthibitishaji analaani na kukataa kuhesabu.

Kwa nini TestMace ni bora kuliko Postman

Ukamilishaji wa hali ya juu kiotomatiki

Hivi sasa TestMace ina ukamilishaji wa kawaida unaoonekana kama hii:

Kwa nini TestMace ni bora kuliko Postman

Hapa, pamoja na mstari wa kukamilisha kiotomatiki, inaonyeshwa ni nini mstari huu ni wa. Utaratibu huu hufanya kazi tu katika misemo iliyozungukwa na mabano ${}.

Kama unaweza kuona, alama za kuona zimeongezwa ambazo zinaonyesha aina ya kutofautiana (kwa mfano, kamba, nambari, safu, nk). Unaweza pia kubadilisha modi za ukamilishaji kiotomatiki (kwa mfano, unaweza kuchagua ukamilishaji kiotomatiki kwa vigeu au vichwa). Lakini hata hii sio jambo muhimu zaidi!

Kwanza, ukamilishaji kiotomatiki hufanya kazi hata katika misemo (inapowezekana). Hivi ndivyo inavyoonekana:

Kwa nini TestMace ni bora kuliko Postman

Na pili, ukamilishaji kiotomatiki sasa unapatikana katika hati. Angalia jinsi inavyofanya kazi!

Kwa nini TestMace ni bora kuliko Postman

Hakuna maana katika kulinganisha utendakazi huu na Postman - kukamilisha kiotomatiki kuna mdogo tu kwa orodha tuli za vigeu, vichwa na maadili yao (nisahihishe ikiwa nimesahau kitu). Maandishi hayajakamilika kiotomatiki :)

Hitimisho

Oktoba iliadhimisha mwaka tangu kuanza kwa utengenezaji wa bidhaa zetu. Wakati huu, tuliweza kufanya mambo mengi na, kwa njia fulani, tulikutana na washindani wetu. Lakini iwe hivyo, lengo letu ni kutengeneza zana inayofaa kabisa ya kufanya kazi na API. Bado tuna kazi nyingi ya kufanya, hapa kuna mpango mbaya wa maendeleo ya mradi wetu kwa mwaka ujao: https://testmace.com/roadmap.

Maoni yako yataturuhusu kuabiri vyema wingi wa vipengele, na usaidizi wako unatupa nguvu na imani kwamba tunafanya jambo linalofaa. Inatokea kwamba leo ni siku muhimu kwa mradi wetu - siku TestMace ilichapishwa BidhaaHunt. Tafadhali tuunge mkono mradi wetu, ni muhimu sana kwetu. Zaidi ya hayo, kuna toleo la kujaribu kwenye ukurasa wetu wa PH leo, na ni mdogo

Chanzo: mapenzi.com

Kuongeza maoni