Zergatik dira proba automatizatuak ezinbestekoak
Produkzio-mailako softwareak kalitate-bermatzea behar du — eta proba manuala eskalan ez da jasangarria. Kode-aldaketa bakoitzak erregresio berriak sartzeko arriskua du. Milaka proba automatizatu etengabe exekutatzen dituen garapen-prozesu batek bermatzen du akatsak produkziora iritsi aurretik harrapatzen direla.
AA iraulketa bat ekarri du probetara: proba-kasuak sortzea, muga-kasuak identifikatzea eta erregresio-patroiak detektatzea — guzti hau azkarrago eta integralago eskuzko probak baino.
Proba-piramidea
Software-probak maila anitzetan egituratzen dira:
- Unitate-probak — funtzio eta osagai banakoen jokabidea egiaztatzen. Azkarrak, kopuru handia
- Integrazio-probak — osagaien arteko elkarrekintza egiaztatzen. Datu-baseak, APIak, kanpoko zerbitzuak
- E2E probak — erabiltzaile-ibilbide osoak egiaztatzen hasieratik amaierara. Nabigatzaile-automatizazioa
- UI probak — erabiltzaile-interfazea egiaztatzen. Ikusmen-erregresio, erantzunkortasuna
- Segurtasun-probak — ahultasunak bilatzen. Injekzioa, XSS, autentifikazio-arazoak
- Errendimendu-probak — kargapeko jokabidea neurtzen. Latentzia, emaria, baliabide-kontsumoa
AAk proba-sorrera iraultzatzen du
AAk kode-basea azter dezake eta automatikoki proba-kasuak sor ditzake — bide zuzena, muga-kasuak, errore-baldintzak eta segurtasun-eszenatokiak estaliz. Giza probatzaileak askotan alde batera uzten dituzten kasuak — mugako balioak, sarrera hutsak, Unicode karaktere bereziak, SQL injekzio-patroiak — AAk sistematikoki estaltzen ditu.
AAk sortutako proba bakoitzak praktika onak jarraitzen ditu: izen argiak, ezarpen eta garbiketa egokiak, esanguratsuak diren baiezpenak eta beste proba batzuekiko independentzia.
Erregresio adimentsua
Proba-multzo handiak mantentzearen erronka etsigarriena erregresio-detekzioa da. AAk aldaketa baten eragina aurreikus dezake: zein proba kaltetuko diren, zein eremuak arrisku handiagoa duten eta non jarri arreta. Kode-estaldura tresna tradizionalek kopurua neurtzen dute; AAk kalitatea neurtzen du — zein probak ematen dute konfiantza erreala eta zeintzuk dira faltsuzko segurtasun-sentsazioa.
CI/CD integrazioa
Proba automatizatuek beren balio osoa CI/CD pipeline-ean integratuta ematen dute. Commit bakoitzean probak automatikoki exekutatzen dira, eta hedapena proba guztiak gainditu ondoren soilik gertatzen da. Hau "kalitate-ate" bat da — ez du kode txarrik produkziora iristen uzten. Proba-paralelizazioak exekuzio-denbora minimizatzen du — minutuetan milaka proba exekutatzea posible da.