Agile Test Automation Framework
⚡ Älykäs yhteenveto
Ketterä testiautomaatio soveltaa automatisoituja tarkistuksia lyhyiden sprinttien sisällä, joissa vaatimukset muuttuvat viikoittain ja vakaalle vesiputousjulkaisulle rakennettu ohjelmistopaketti muuttuu nopeasti ylläpitotaakaksi turvaverkon sijaan.
Ketterä automaatiotestaus
Ketterä automaatiotestaus on testiautomaation hyödyntämistä ketterässä toimitusprosessissa. Sen tarkoituksena on tehostaa ohjelmistokehitystä samalla, kun se suojaa laatua ja hallitsee julkaisun kuluttamaa aikaa ja resursseja. Koska testit kirjoitetaan ominaisuuksien kehittämisen rinnalla, käytäntö on erittäin riippuvainen kehittäjien ja testaajien välisestä koordinoinnista.
Siitä lähtien, kun ketterä menetelmä pyrki pääsemään eroon vesiputousmallin työläästä realiteeteista, sen vaikutus on tuntunut automaatiotestaus myös. Nämä kaksi tieteenalaa on yhdistettävä tarkoituksella:
Automaatio vesiputousmenetelmässä vs. automaatio ketterässä menetelmässä
Perinteisessä ohjelmistotestauksen elinkaaressa automaatiotestaus on mahdollista, kun sovellus on vakaa ja vaatimukset on täytettySe olettaa a huomattavan määrän aikaa, erittäin ammattitaitoisia automaatioasiantuntijoita ja huomattavat käyttöönottokustannukset. Perustavoitteena on vähentää kustannuksia pitkällä aikavälillä ja varmistaa, ettei olemassa olevien testitapausten ympärille ole syntynyt uusia vikoja.
Automaatiotestaus ei ole luonteeltaan tutkivaa, koska sen päätehtävänä on säästää aikaa ja vähentää kustannuksia. Sitä ei ole suunniteltu uusien ja innovatiivisten vikojen esiin nostamiseen. Automaatiotestaus enimmäkseen vahvistaa jo olemassa olevaa käyttäytymistä.
Nämä kaksi ympäristöä asettavat siis testijoukolle hyvin erilaiset vaatimukset:
| Tekijä | Automaatio vesiputousmallissa | Automaatio ketterässä tekniikassa |
|---|---|---|
| Sovelluksen tila | Vakaa ja uloskirjattu ennen komentosarjojen aloittamista | Muutetaan jokaista sprinttiä, usein jo skriptauksen aikana |
| Käytettävissä oleva aika | Omistettu automaatiovaihe | Mikä tahansa mahtuu yhden–neljän viikon sprinttiin |
| Kuka-skriptit | Erillinen automaatioasiantuntijoiden tiimi | Toimitustiimi, testaajat ja kehittäjät yhdessä |
| Päätavoite | Pitkän aikavälin kustannusten alentaminen suuressa regressiopaketissa | Nopea palaute juuri rakennetusta lisäyksestä |
| Huoltoriski | Matala, koska vaatimukset etenevät hitaasti | Korkea, koska vaatimukset muuttuvat jatkuvasti |
Kuinka automatisoida ketterässä menetelmässä
Määritelmänsä mukaan ketterä menetelmä poistaa tylsän dokumentoinnin, jotta uudet ideat voidaan toteuttaa nopeasti ja ihmiset voivat olla vuorovaikutuksessa vapaasti. Se suosii tutkivaa työtä paperityön sijaan:
Ketterien metodologian ja automaatiotestauksen perusfilosofioiden välillä on todellinen ristiriita. Ketterät tiimit ratkaisevat tämän rajaamalla automatisoitavaa sen sijaan, että automatisoisivat vähemmän: tarkistukset kirjoitetaan samassa sprintissä kuin ominaisuus, siirretään alas yksikkö- ja API-tasolle, jossa niiden ylläpito on halvinta, ja suoritetaan jokaisella koontiversiolla.
Ketterän testiautomaation peruspisteet
Ennen kuin varaat sprinttikapasiteettia automatisointiin, punnitse tekijöitä, jotka ratkaisevat, voidaanko skripti ylipäätään viimeistellä:
- Suunnittelu- ja koodausaika: Jokainen skripti on suunniteltava, koodattava ja tarkistettava kuten tuotantokoodi.
- Validointi testidataa vasten: Valmis skripti on validoitava olemassa olevien testitietojen avulla, ennen kuin kukaan voi luottaa siihen.
- Testin tarkoitus: Funktionaalisilla ja regressiotesteillä on erilaiset ylläpitokustannukset ja erilaiset säilyvyysajat.
- Sprint pituus: Sprintti kestää yhdestä neljään viikkoa, useimmiten kaksi, mikä harvoin jättää tilaa suurelle skriptaustyölle.
Toinen tekijä on vaatimusten muutos. Ketterä menetelmä on määritelmän mukaan tekniikka, jolla reagoidaan asiakaslähtöisiin muutoksiin, joten se soveltuu usein tehtäviin muutoksiin kehityksen aikana.
Automaatiotestaus on sitä vastoin hyödyllisintä vakaita vaatimuksia vasten. Se ei sovellu hyvin ketterän menetelmän jatkuvaan vaihtuvuuteen, minkä vuoksi automatisoitavien asioiden valinnalla on enemmän painoarvoa kuin automatisoidun määrän valinnalla.
Ketterät automaatiotyökalut
Asiaankuuluvan valinta automaatiotyökalu on toinen tärkeä tekijä automaatiotestauksen käyttöönotossa ketterän menetelmän puitteissa. Lisensoidut automaatiotyökalut esimerkiksi asettavat tiukat käyttöoikeuskriteerit erityyppisille ja -tasoisille käyttäjille, mikä rajoittaa sitä, kuka voi käyttää kyseiseen testausautomaatiokehykseen kuuluvia resursseja.
Ketterä menetelmä sitä vastoin korostaa avointa yhteistyötä ja avointa vuorovaikutusta tiimin jäsenten välillä. Rajoitetut käyttöoikeuskäytännöt toimivat tätä yhteenkuuluvuutta vastaan ja voivat tuottaa tuloksia, jotka eivät ole hyödyllisiä eivätkä edistä projektin onnistumista.
Ensisijaisena tavoitteena on toimittaa laadukkaita automaatioskriptejä ketterän prosessin sallimassa ajassa. Valitse ehdokastestitapaukset huolellisesti, jotta tuloksena olevia skriptejä voidaan käyttää uudelleen myöhemmin ja silti saada valmiiksi annetussa ajassa.
Jopa ketterässä ympäristössä jotkin testit on silti käsiteltävä – erityisesti regressiotestit. Seuraavassa osiossa tarkastellaan tilanteita, joihin automaatiotestaus sopii, ja miten kukin niistä liittyy ketterään testaukseen.
Automaatiotestaus Concepts Kun sitä sovelletaan ketterään tekniikkaan
Alla oleva taulukko ottaa esiin seitsemän klassista ehtoa, jotka oikeuttavat testin automatisoinnin, ja antaa ketterän vastauksen kuhunkin. Vain kolme näistä ehtoista soveltuu siististi ketterään sprinttiin, ja kaikki kolme ovat regressiomuotoisia:
| # | Automaatiotestauksen konsepti | Ketterän metodologian vastaus |
|---|---|---|
| 1 | Testi on toistettava usein. | Tässä kohtaa regressiotestauksen käsite tulee kuvaan. |
| 2 | Testin työnkulku ja sen validointi kehittyvät ja muuttuvat hitaasti ajan myötä. | Ei hyödyllinen ketterässä testauksessa, koska ketterä testaus tarkoittaa vaatimusten usein tapahtuvia muutoksia. |
| 3 | Testi validoi liiketoimintaprosessin tai työnkulun pikemminkin kuin ulkoasun, värin tai taulukon asettelun. | Tätä skenaariota voidaan pitää manuaaliseen testaukseen liittyvänä. |
| 4 | Testi tuottaa tuloksia sääntelyelimelle, joka vaatii tulosten sähköistä tallentamista ja arkistointia viralliseksi todisteeksi vaatimustenmukaisuudesta. | Ei sovellu ketterään metodologiaan, koska kattava dokumentaatio ei kuulu ketterään metodologiaan. |
| 5 | Testi on hyvin toistuva tai siinä on useita vaiheita, jotka on suoritettava täsmälleen samalla tavalla joka kerta, jolloin manuaalisen testaajan väsymistä on vältettävä. | Ei sovellu ketterään metodologiaan. |
| 6 | Testin onnistumis- tai hylkäystulos on kohtuullisen helppo määrittää ja tallentaa valitulla automaatiotyökalulla. | Sopii ketterän testauksen aikana tehtäviin regressiotesteihin, jotka vaativat toistuvia ja työläitä taitoja. |
| 7 | Testin on syötettävä sovellukseen merkittävä määrä dataa. | Voidaan sisällyttää regressiotestaukseen. |

.jpg)


