10 gcéim chun do thástálacha API a uathoibriú go héifeachtach ~

Sula léann tú an post seo, déan cinnte go bhfuil ceann amháin ar a laghad de na saincheisteanna seo a leanas agat:

  1. An bhfuil fadhbanna agat nó an bhfuil tú fós ag déanamh tástálacha API de láimh?
  2. An mbíonn tú ag obair go minic mar QA / QE / TE / SET le Postman / Insomnia / Paw chun do chríochphointí REST API a thástáil toisc nach bhfuil a fhios agat go díreach conas do chríochphointí a thástáil go huathoibríoch?
  3. An oibríonn tú mar QA / QE / TE / SET atá ag iarraidh an tástáil a scaradh ón aip?

Is é príomhchuspóir an phoist seo na fadhbanna go léir thuas a réiteach tríd an tástáil API a uathoibriú agus í a chomhtháthú i Jenkins CI. Tá sé níos éasca ná mar a cheapfá má roghnaíonn tú na huirlisí agus na teicnící cearta don phost seo.

PREREQUISITES

  1. Node.js: Is timpeallacht runtime JavaScript é Node.js atá bunaithe ar inneall V8 JavaScript Chrome. Úsáideann Node.js samhail I / O gan bhac ar imeachtaí a fhágann go bhfuil sé éadrom agus éifeachtach. Is é éiceachóras phacáiste Node.js, npm, an t-éiceachóras is mó ar domhan do leabharlanna foinse oscailte.
  2. Mokka: Is creat tástála JavaScript é Mokka a shimplíonn tástáil asincrónach.
  3. Chai: I gcodarsnacht le Jasmine, caithfear leabharlann dearbhaithe breise a úsáid chun mocha a fhorlíonadh. Is leabharlann dearbhaithe é Chai a ligeann duit an comhéadan dearbhaithe is fearr leat a roghnú, lena n-áirítear "dearbhú", "súil" agus "ba cheart".
  4. SuperTest: Is síneadh de SuperAgent é SuperTest, leabharlann riachtanas HTTP AJAX simplí. Soláthraíonn SuperTest astarraingtí ardleibhéil chun freagraí críochphointe API node.j a thástáil le ráitis atá furasta a thuiscint.
  5. Docker: Is ardán oscailte é Docker ar féidir le forbróirí agus riarthóirí córais feidhmchláir dáilte a chruthú, a imscaradh agus a rith ar ríomhairí glúine, VManna ionad sonraí nó sa scamall.
  6. Jenkins CI: Is freastalaí uathoibrithe foinse oscailte é Jenkins atá scríofa i Java. Cuidíonn Jenkins leis an gcuid neamh-dhaonna den phróiseas iomlán forbartha bogearraí a uathoibriú, le rudaí atá coitianta inniu mar chomhtháthú leanúnach, ach trí chur ar chumas na bhfoirne an chuid theicniúil de sheachadadh leanúnach a chur i bhfeidhm.

Glactar leis sa rang teagaisc seo go bhfuil na rudaí seo a leanas agat cheana féin:

  1. Node.js agus Docker suiteáilte ar do ríomhaire.
  2. Tá aip leis an API a theastaíonn uait a thástáil ag rith cheana féin. (Seo an aip samplach https://github.com/rifkyalikiki/example-api-app)
  3. Tá Jenkins CI suiteáilte cheana féin.

LET'S BEGIN

  1. Cruthaigh d’fhillteán tionscadail tástála. Mar shampla: sampla-api-thástáil
  2. Cruthaigh an comhad package.json chun na spleáchais go léir a chur leis.

3. Suiteáil gach spleáchas trí na horduithe seo a rith.

cd your_test_project_folder npm install -g Mokka npm shuiteáil

Ba cheart an fillteán node_modules a chur le d’fhillteán tionscadail tástála agus ba cheart gach spleáchas a shuiteáil go rathúil.

4. Cruthaigh fillteán tástála i d’fhillteán tionscadail tástála.

cd your_test_project_folder mkdir test

Caithfear tástáil a thabhairt ar an eolaire ionas gur féidir le Mocha na comhaid tástála atá le forghníomhú a fháil.

5. Cruthaigh do chéad chomhad tástála API

Is féidir leat ainm ar bith is mian leat a thabhairt do do chomhaid mocha. Mar sin féin, má tá tú ag tástáil ilphointí deiridh a bhaineann le tacair mhúnla, molaim iad a ainmniú mar "yourModel_test.js". Mar shampla, cruthaigh comhad user_test.js san eolaire tástála. Ná déan dearmad do URL API a shocrú le hathróg dhomhanda. Glaonn tú an athróg seo nuair a dhéanann tú iarratais REST le SuperTest.

6. Rith do chéad tástáil API trí na horduithe seo a rith

cd your_test_project_folder npm tús
cd your_test_project_folder JUNIT_REPORT_PATH = toradh tástála / toradh.xml JUNIT_REPORT_STACK = 1 mocha - teorainn ama 25000 - dathanna - tuairisceoir Mokka-Jenkins-Tuairisceoir

Seo toradh na tástála

Torthaí tástála ón teirminéaltoradh.xml

7. Cruthaigh entrypoint.sh chun d’ordú rádala tástála a chur.

8. Cruthaigh comhad dugaireachta le húsáid ar Jenkins CI.

9. Cruthaigh do chuid míreanna poist Jenkins

Tairiscint poist nua JenkinsMír Poist Jenkins (1)Mír Poist Jenkins (2)Mír Poist Jenkins (3)

Féadfaidh tú neamhaird a dhéanamh den rabhadh ar thoradh na tástála ar dtús. Imíonn sé as feidhm tar éis don phost a bheith ar siúl.

Ansin cliceáil ar an gcnaipe SAVE chun an post a chruthú.

10. Rith do phost Jenkins agus breathnaigh ar thorthaí na tástála.

Cuir tús le post Jenkins trí chliceáil ar an gcnaipe súgarthaToradh tástála ó phost Jenkins

Tá torthaí mo thástála difriúil leatsa mar tá an post déanta agam cheana féin agus mé ag scríobh an post seo.

Comhghairdeas, tá do thástáil API uathoibrithe agat anois. Sa chéad phost eile tabharfaidh mé léargas ar mo smaoineamh chun mo chreat tástála féin a chruthú.

Bain sult as tástáil!

Foinse: http://developmentnow.com/2015/02/05/make-your-node-js-api-bulletproof-how-to-test-with-mocha-chai-and-supertest/