From db5528ec65cbab35d69e6cfa67414b210b1dfc1b Mon Sep 17 00:00:00 2001 From: Ane Diaz de Tuesta Date: Tue, 19 Jan 2021 07:26:26 +0100 Subject: [PATCH] [FEAT] avoid global test fixture: complete basque translation --- README.basque.md | 4 +- .../avoid-global-test-fixture.basque.md | 47 +++++++++++++++++++ 2 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 sections/testingandquality/avoid-global-test-fixture.basque.md diff --git a/README.basque.md b/README.basque.md index 8c93991b..b14a3181 100644 --- a/README.basque.md +++ b/README.basque.md @@ -465,7 +465,7 @@ Aurreko azalpen guztiak faltsuak izango lirateke `===` eragilea erabili izan bal

-## ![✔] 4.3 +## ![✔] 4.3 **TL;PL:** egituratu zure probak ondo bereizitako 3 ataletan: antolatu, aritu eta baieztatu (AAA). Lehenengo atalean probaren konfigurazioa egin behar da; ondoren proba egikaritu behar da; eta, azkenik, baieztapen fasea dator. Egitura horri jarraitzeak bermatzen du irakurleak garuneko PUZik ez gastatzea proba plana ulertzen @@ -489,7 +489,7 @@ Aurreko azalpen guztiak faltsuak izango lirateke `===` eragilea erabili izan bal **Bestela:** probek huts egin dutela eta, inplementazioa bertan behera utzi beharra izan duzula pentsatu. Egoera horretan, lan taldeak denbora asko pasatuko du porrotaren zergatiak aztertzen, azkenean, ondorio tamalgarri honetara iristeko: sistema ondo dabil; probek, ordea, elkarri eragiten diote eta egitura hausten dute -🔗 [**Informazio gehiago: saihestu datu globalak**](/sections/testingandquality/avoid-global-test-fixture.md) +🔗 [**Informazio gehiago: saihestu datu globalak**](/sections/testingandquality/avoid-global-test-fixture.basque.md)

diff --git a/sections/testingandquality/avoid-global-test-fixture.basque.md b/sections/testingandquality/avoid-global-test-fixture.basque.md new file mode 100644 index 00000000..63452fc7 --- /dev/null +++ b/sections/testingandquality/avoid-global-test-fixture.basque.md @@ -0,0 +1,47 @@ +# Saihestu datu globalak, gehitu datuak proba bakoitzeko + +

+ +### Azalpen paragrafoa + +Hau da urrezko proba araua: egin proba kasuak sinpleak, proba bakoitzak bere datu-baseko ilarak sortu eta erabili behar ditu menpekotasunak ekiditeko eta probaren fluxua ondo ulertzeko. Egia esan, garatzaileek hau askotan urratzen dute, datu-baseak beteaz probak exekutatu aurretik (‘test fixture’ bezala ere ezagutuak), errendimendua hobetzeko xedearekin. Errendimendua gai garrantzitsua izan arren arindua izan daiteke (adibidez Memoria Datu-Baseak, begiratu "Osagarrien probrak" atala), baina proben konplexutasuna da kontutan hartu beharreko gai mingarriena. Praktikan, sortu proba kasu bakoitza explizituki datu-basean beharrezko informazioa gehitzeko eta jokatu bakarrik datu horiekin. Errendimendua arazo larria bihurtzen bada, oreka akordio bat aurki daiteke soilik datuak gehituko dituen proba bat idazten eta ondoren hau bikoizten beste probentzat (adibidez queries) + +

+ +### Kodearen adibidea: proba bakoitzat bere datu multzoa bakarrik ikutzen du + +```javascript +it("Webgune baten izena eguneratzerakoan, baieztapen arrakastatsua izan", async () => { + // probak datu berriak gehitzen ditu eta horiek bakarrik ikutzen ditu + const probapeanDagoenWebgunea = await WebguneZerbitzua.webguneaGehitu({ + izena: "webgunearenEguneraketarenProba", + }); + const izenEguneraketarenEmaitza = await WebguneZerbitzua.izenaAldatu( + probapeanDagoenWebgunea, + "izenBerria" + ); + expect(izenEguneraketarenEmaitza).to.be(true); +}); +``` + +

+ +### Kodearen adibidea – Anti Erdua: probak ez dira independenteak eta aurrez konfiguratutako datuak egotea aintzat hartzen dute + +```javascript +before(() => { + //webguneak eta admnistrariak gehitu gure datu-basean. Non daude datuak? kanpoan. Kanpo jsonen edo migrazio frameworken batean + await DB.GehituDatuakJsonIturritik('iturria.json'); +}); +it('Webgune baten izena eguneratzerakoan, baieztapen arrakastatsua izan', async () => { + //Badakit 'portal' webgune izena existitzen dela, iturri fitxategietan ikusi dut + const eguneratzekoWebgunea = await WebguneZerbitzua.berreskuratuWebgunearenIzena('Portal'); + const izenEguneraketarenEmaitza = await WebguneZerbitzua.izenaAldatu(eguneratzekoWebgunea, 'izenBerria'); + expect(izenEguneraketarenEmaitza).to.be(true); +}); +it('Webgune izena erabiliaz eskaera egitean, webgune zuzena berreskuratu', async () => { + //Badakit 'portal' webgune izena existitzen dela, iturri fitxategietan ikusi dut + const egiaztatzekoWebgunea = await WebguneZerbitzua.berreskuratuWebguneaIzenarenBidez('Portal'); + expect(egiaztatzekoWebgunea.izena).to.be.equal('Portal'); //Huts egitea! Aurreko probak izena aldatu du :[ +}); +```