Mikä on regressiotestaus?
Mikä on regressiotestaus?
Regressiotestaus on määritelty ohjelmistotestaukseksi, jolla varmistetaan, että äskettäinen ohjelman tai koodin muutos ei ole vaikuttanut haitallisesti olemassa oleviin ominaisuuksiin. Voimme myös sanoa, että kyseessä on vain täydellinen tai osittainen valikoima jo suoritettuja testitapauksia, jotka suoritetaan uudelleen sen varmistamiseksi, että olemassa olevat toiminnot toimivat hyvin.
Tämän tyyppinen testaus tehdään sen varmistamiseksi, että uusilla koodimuutoksilla ei ole sivuvaikutuksia olemassa oleviin toimintoihin. Se varmistaa, että vanha koodi toimii edelleen, kun viimeisimmät koodimuutokset on tehty.
Miksi regressiotestaus?
Regressiotestausprosessi on olennainen testausalueella. Se voi tunnistaa, aiheuttavatko koodin muutokset tai parannukset uusia vikoja tai häiritsevätkö olemassa olevia toiminnallisia testejä.
Ilman regressiotestausprosessia pienetkin koodimuutokset voivat johtaa kalliisiin virheisiin. Siksi se on järjestelmällinen käytäntö, joka auttaa ylläpitämään ohjelmistojen laatua. Tämä menetelmä auttaa estämään tunnettujen ongelmien toistumisen ja lisää luottamusta ohjelmistoon.
Milloin voimme suorittaa regressiotestauksen?
Tässä on skenaariot, joissa voit käyttää regressiotestausprosessia.
Sovellukseen on lisätty uusia toimintoja: Näin tapahtuu, kun sovellukseen tai verkkosivustoon luodaan uusia ominaisuuksia tai moduuleja. Regressio suoritetaan sen selvittämiseksi, toimivatko nykyiset ominaisuudet normaalisti uuden ominaisuuden käyttöönoton yhteydessä.
Muutostarpeen sattuessa: Kun järjestelmässä tapahtuu merkittävää muutosta, käytetään regressiotestausta. Tämä testi tehdään sen tarkistamiseksi, ovatko nämä muutokset vaikuttaneet olemassa oleviin ominaisuuksiin.
Vian korjaamisen jälkeen: Kehittäjät suorittavat regressiotestauksen korjattuaan virheen missä tahansa toiminnassa. Tämä tehdään sen määrittämiseksi, ovatko vian korjaamisen aikana tehdyt muutokset vaikuttaneet muihin asiaan liittyviin olemassa oleviin ominaisuuksiin.
Kun suorituskykyongelma on korjattu: Suorituskykyongelmien korjaamisen jälkeen käynnistetään regressiotestausprosessi, jolla tarkistetaan, onko se vaikuttanut muihin olemassa oleviin toimintatesteihin.
Integroitaessa uuteen ulkoiseen järjestelmään: Päästä päähän -regressiotestausprosessi vaaditaan aina, kun tuote integroidaan uuteen ulkoiseen järjestelmään.
Kuinka tehdä regressiotestaus ohjelmistotestauksessa
Kuten aiemmin keskustelimme, regressiotestaus käynnistyy ohjelmistoon tehtyjen muutosten perusteella. Se voi olla virheenkorjaus, uusien ominaisuuksien integrointi ja niin edelleen. Aina kun tällaista työtä tapahtuu, laadunvarmistustiimi suorittaa seuraavat alla kuvatut toimet. Nämä tehtävät suoritetaan ennen kuin ne käynnistävät regressiotestin suoritussyklin.
- Keskustele kehitystiimin kanssa niistä moduuleista ja kirjastoista, joita muutoksen aikana on käsitelty
- Keskustele tuotteen omistajan kanssa muutoksesta uuteen ominaisuuteen ja opi, miten se kulkee muiden toimintojen välillä tai vaikuttaa muihin toimintoihin.
- Tunnista olemassa olevan testipaketin testit, jotka testaajien on suoritettava olemassa olevien ominaisuuksien palauttamiseksi.
Erilaisia regressiotestaustekniikoita voidaan suorittaa tehokkaan ohjelmiston laadunvarmistuksen varmistamiseksi:
Testaa kaikki uudelleen
Tämä on yksi regressiotestauksen menetelmistä, erityisesti käyttämällä regressiotestaussarjaa. Tässä tapauksessa kaikki olemassa olevan testiämpäri tai -sarjan testit tulee suorittaa uudelleen. Tämä on kallis menetelmä, koska se vaatii paljon aikaa ja resursseja.
Regressiotestin valinta
Regressiotestin valinta on tekniikka, jossa suoritetaan joitakin testisarjasta valittuja testitapauksia. Se auttaa testaamaan, vaikuttaako muokattu koodi ohjelmistosovellukseen vai ei. Tässä testitapaukset on luokiteltu kahteen osaan. Uudelleenkäytettäviä testitapauksia voidaan käyttää muissa regressiojaksoissa, kun taas vanhentuneita testitapauksia ei voida käyttää seuraavissa sykleissä.
Testitapausten priorisointi
Testitapausten priorisointi riippuu liiketoiminnan vaikutuksesta, kriittisyydestä ja usein käytetyistä toimintatesteistä. Myös testitapausten priorisointi prioriteetin perusteella vähentää huomattavasti regressiotestien suorittamista.
Testitapausten valinta regressiotestausta varten
Toimialan tiedoista havaittiin, että suuri osa asiakkaiden ilmoittamista vioista johtui viime hetken virheenkorjauksista. Tämä johti sivuvaikutuksiin, joten valittiin Testitapaukset regressiotestaus ei ole helppo tehtävä.
Tehokas regressiotestisarja voidaan rakentaa valitsemalla seuraavan tyyppiset testitapaukset -
- Testitapaukset toiminnoista/moduuleista, joissa on usein vikoja.
- Käyttäjille paremmin näkyvät toiminnot
- Testitapaukset, jotka varmistavat tuotteen ydinominaisuudet
- Testaustapauksia toiminnoista, joihin on tehty uudempia muutoksia.
- Kaikki integraatiorajoitukset
- Kaikki monimutkaiset testitapaukset
- Raja-arvotestitapaukset
- Valittu onnellinen polku ja negatiiviset testitapaukset
Regressiotestaustyökalut
Jos ohjelmistoasi muutetaan usein, regressiotestauksen kustannukset kasvavat. Koska testitapausten manuaalinen suorittaminen lisää testin suoritusaikaa ja kustannuksia. Regressiotestitapausten automatisointi on fiksu valinta tällaisissa tapauksissa. Automatisoinnin laajuus riippuu testitapausten määrästä, jotka ovat käytettävissä uudelleen peräkkäisissä regressiojaksoissa.
Seuraavat ovat tärkeimmät työkalut, joita käytetään sekä toiminnalliseen että regressiotestien automatisointiin ohjelmistosuunnittelussa:
1) testRigor
testRigor auttaa sinua ilmaisemaan testit suoraan suoritettaviksi spesifikaatioiksi selkeällä englannin kielellä. Kaikkien teknisten kykyjen käyttäjät voivat rakentaa kaiken monimutkaisia päästä päähän -testejä, jotka kattavat mobiili-, verkko- ja API-vaiheet. Testivaiheet ilmaistaan loppukäyttäjätasolla sen sijaan, että luottaisivat toteutuksen yksityiskohtiin, kuten XPatheihin tai CSS-valitsimiin.
Ominaisuudet:
- Ilmainen ikuisesti julkinen versio
- Testitapaukset ovat englanniksi
- Rajoittamaton määrä käyttäjiä ja rajoittamaton määrä testejä
- Helpoin tapa oppia automaatio
- Tallennin web-vaiheita varten
- Integraatiot CI/CD:hen ja testitapausten hallintaan
- Sähköposti- ja SMS-testaus
- Web + Mobile + API -vaiheet yhdessä testissä
2) Aihe7
Aihe7 on pilvipohjainen, "todellinen kooditon" testiautomaatioratkaisu. Se yhdistää kaikki testaukset yhdelle alustalle ja antaa kenelle tahansa tulla automaatioasiantuntijaksi. Tämä helppokäyttöinen ohjelmisto mahdollistaa nopean, helpon ja kehittyneen regressiotestien luomisen. Se ei vaadi yhtä koodiriviä ja tarjoaa laajan suorituskyvyn, joka suorittaa tuhansia öisiä testejä.
Ominaisuudet:
- Integroituu helposti DevOps/Agile-työkalujen kanssa käyttämällä natiivilaajennuksia, sovelluksen sisäisiä integraatioita ja avoimia sovellusliittymiä.
- Laajamittainen rinnakkaissuoritus pilvessä tai on-premissä yritystason suojauksella.
- Joustava virheraportointi ja tuloksista videokuvaus.
- Yksinkertainen, mittaamaton hinnoittelu, joka tarjoaa taloudellisen ennustettavuuden.
- SOC2 Type2 -yhteensopiva
Selenium: Selenium on eniten käytetty avoimen lähdekoodin työkalu web-sovellusten automatisointiin. Selenium voidaan käyttää selainpohjaiseen regressiotestaukseen. Se tukee ohjelmointikieliä, kuten Java, Ruby, Python, Jne
Quick Test Professional (QTP): HP Quick Test Professional on automatisoitu ohjelmisto, joka on suunniteltu automatisoimaan toiminnallisia ja regressiotestejä. Se käyttää VB Script -kieltä automaatioon. Se on tietoihin perustuva avainsanapohjainen työkalu.
Rational Functional Tester (RFT): IBMn rationaalinen toiminnallinen testaaja on a Java työkalu, jota käytetään ohjelmistosovellusten testitapausten automatisointiin. Tätä käytetään ensisijaisesti regressiotestitapausten automatisointiin, ja se integroituu myös Rational Test Manageriin.
Regressiotestauksen tyypit
Tässä on erilaisia regressiotestejä:
1) Yksikköregressiotestaus (URT)
Tämä on erittäin fokusoitu lähestymistapa, jossa vain muokattu osa menee regressiotestin alle vaikutusalueen sijaan. Tällä tavalla moduulin muut osat pysyvät ennallaan.
esimerkki
Kuten Esimerkiksi koontiversiossa 1 ongelma löydettiin ja siitä ilmoitettiin kehittäjälle.
Oletetaan, että se oli virhe kirjautumistoiminnassa. Joten kehittäjä korjaa sen, lisää virheenkorjauksen Build 2:een ja lähettää sen. Testausryhmä tarkistaa vain, toimiiko kirjautumisominaisuus odotetulla tavalla, eikä muita ominaisuuksia.
2) Alueellinen regressiotestaus (RRT)
Alueellisessa regressiotestauksessa testataan muunnos- ja vaikutusalueita. Tätä aluetta tutkitaan sen selvittämiseksi, voivatko muutokset vaikuttaa luotettaviin moduuleihin.
Esimerkiksi: Tässä esimerkissä, ensimmäisessä koontiversiossa, kehittäjä lähettää moduulit A, B, C ja D testattavaksi. Testaaja löytää vikoja moduulista B, joten sovellus palautetaan kehittäjälle virheiden korjaamiseksi.
Kun kehittäjä korjaa moduulin B toisen koontiversion virheet, se lähetetään testiinsinöörille uudelleen. Testausinsinööri saa tietää, että kiinnitysmoduuli B on vaikuttanut A:seen ja C:hen.
Tästä syystä testaaja tarkistaa moduulin B muutokset toisessa julkaisussa. Testaa sitten vaikutusalueita A- ja C-alueilla sekä tunnistaa, miten ne ovat vaikuttaneet.
Huomautus: Regressiotestauksen aikana on mahdollista, että tämä alla oleva ongelma saattaa ilmetä.
Ongelma:
- Rakennusversiossa 1 asiakkaat yleensä pyytävät muutoksia, muokkauksia ja lisättyjä ominaisuuksia.
- Tämä pyyntö lähetetään sitten sekä kehitys- että testaustiimeille.
- Sen jälkeen kehitystiimi tekee muutokset. Seuraavaksi testiinsinööri lähettää asiakkaalle sähköpostia ja ilmoittaa alueista, joihin muutos vaikuttaa.
- Testijohto kokoaa sitten asiakkaalta, kehittäjiltä ja testausosastolta luettelon vaikuttavista alueista.
- Vaikutusluettelo lähetetään sitten testiinsinööreille, jotka aloittavat regressiotestauksen.
Tämän tyyppinen testausmenetelmä luo viestintäaukkoja. Kehittäjät ja asiakkaat eivät aina voi palata sähköpostiin; siksi vaikutusalueesta ei ole kunnollista yleiskuvaa.
Ratkaisu: Tämän tyyppisen ongelman poistamiseksi testaustiimi voi järjestää tapaamisen, kun uusi versio saapuu virheenkorjausten, uusien ominaisuuksien ja muutosten jälkeen. Tässä kokouksessa keskustellaan siitä, vaikuttavatko muutokset moduuleihin.
Vaikutuksia etsitään testikierroksella, jotta he voivat luoda vaikutusluettelon. Testijohto lisää tähän luetteloon enimmäismäärän alueita vaikutusalueella.
Tässä on alla, miltä prosessi näyttää:
- "Build verification test" tarkistaaksesi sovelluksen tärkeimmät ominaisuudet.
- Kaikkien uusien ominaisuuksien testaus.
- Muutettujen tai muunnettujen ominaisuuksien tutkiminen.
- Virheiden uudelleen testaus.
- Lopuksi vaikutusalueen analyysi alueellisella regressiotestauksella.
3) Täysi regressiotestaus (FRT):
Tämä testaus kattaa kaikki sovelluksen toiminnot. Täysi regressiotestaus suoritetaan yleensä myöhemmissä julkaisuissa. Näin ollen voit käyttää FRT:tä muutaman ensimmäisen julkaisun jälkeen ja viimeisenä testinä ennen käynnistämistä.
Toisessa tai kolmannessa versiossa asiakas tai yrityksen omistaja voi pyytää muutoksia. He voivat myös vaatia uusia toimintoja ja/tai raportoida vioista. Testausryhmä tekee sitten vaikutusanalyysin, tekee kaikki muutokset ja suorittaa lopullisen täydellisen tuotetestin.
Esimerkiksi 4. versio on viimeinen julkaisu ennen julkaisua. Joten tässä kokoonpanossa testaustiimi suorittaa tuotteen täydellisen testin tai uudelleentestauksen pelkän vaikutusalueen tai ominaisuuden sijaan. Tämä tehdään versioiden 1, 2 ja 3 muutosten ja testien jälkeen.
Täydellisen regressiotestin suorittamiseksi sinun on otettava huomioon seuraavat olosuhteet:
- Muutokset tehdään sovelluksen ydinkomponentteihin. Jos esimerkiksi sovelluksen tai ydinmoduulien juuritiedostossa on muutos, koko sovellus on regressoitava. Jos muutoksia on tehty useita.
4) Korjaava regressiotestaus:
Tämä testaus tehdään, kun ominaisuuksiin ei tehdä muutoksia. Tällaisia testejä voidaan tehdä olemassa olevilla tapauksilla.
5) Testaa kaikki regressiotestit uudelleen:
Tässä testausmuodossa kaikki pienet ja suuret muutokset, jotka on tehty sovelluksessa alkuperäisestä tai versiosta 1, testataan uudelleen.
Tämä testaus tehdään, kun kaikki muut regressiotestit eivät pysty tunnistamaan ongelmien perimmäistä syytä.
6) Valikoiva regressiotestaus:
Tällä tarkistetaan kuinka koodi reagoi, kun ohjelmaan lisätään uusi koodi. Tämän testin suorittamiseksi käytetään olemassa olevien tapausten osajoukkoa, jotta se olisi tehokas ja kustannustehokas. Osajoukon valintakriteerit perustuvat muokattuihin koodimoduuleihin, riippuvuuksiin, vaikuttavien toimintojen kriittisyyteen ja historiallisiin virhetietoihin.
7) Progressiivinen regressiotestaus:
Tämän tyyppinen regressiotestaus tuottaa tärkeitä tuloksia, kun ohjelmaan tehdään erityisiä muutoksia ja luodaan uusia testitapauksia.
Se auttaa varmistamaan, että uusimmassa versiossa ei ole vaikutusta vanhempien versioiden komponentteihin.
8) Osittainen regressiotesti:
Osittaista regressiotestausta käytetään varmistamaan, että uudet koodimuutokset tai parannukset eivät vaikuta negatiivisesti olemassa oleviin toimintoihin. Toisin kuin täydellisessä regressiotestissä, joka sisältää koko sovelluksen uudelleentestauksen, osittaisessa regressiotestauksessa keskitymme vain tiettyihin ohjelmiston osiin, joihin viimeaikaiset muutokset vaikuttavat.
Siksi osittaisen regressiotestauksen ensisijainen tarkoitus on säästää aikaa ja resursseja välttämällä sovelluksen muuttumattomien osien uudelleentestausta. Osittaisen regressiotestauksen testitapaukset valitaan huolellisesti koodimuutosten vaikutusanalyysin perusteella. On ratkaisevan tärkeää tunnistaa oikeat testitapaukset, jotka sisällytetään osittaiseen regressiotestisarjaan. Kriittisten testitapausten puuttuminen voi johtaa huomiotta jääviin ongelmiin.
Automaattinen regressiotestaus
Kuten aiemmin mainittiin, regressiotestien automatisointi on välttämätöntä, kun julkaisuja on useita. Sitä tarvitaan myös useisiin regressiojaksoihin ja lukuisiin toistuviin toimiin. Koska useiden testijaksojen suorittaminen eri julkaisuissa on erittäin aikaa vievää.
Automatisoinnin avulla voit kuitenkin testata useita kertoja. Tämä edellyttää automaation testiskriptien kirjoittamista suorittamista varten, mikä vaatii asianmukaista suunnittelua ja suunnittelua. Tällaisessa testauksessa tiimi ei voi aloittaa suoraan automaatiosta. Siksi meidän on otettava mukaan sekä manuaalista testausta että automaatiotestaustiimejä kattamaan tämä alue. Näin automaattinen regressiotestaus tehdään:
Vaihe 1) Manuaalinen testaustiimi tarkistaa kaikki vaatimukset ja tunnistaa vaikutusalueen. Tämän prosessin jälkeen he välittävät vaatimustestipaketin automaatiotiimille tai automaatioinsinöörille.
Vaihe 2) Manuaalinen testaustiimi aloittaa uusien moduulien testauksen, kun taas automaatiotestiryhmä kirjoittaa skriptin ja automatisoi testitapauksen.
Vaihe 3) Ennen kuin käytät tätä regressiotestimenetelmää, automaatiotiimi tunnistaa, mitkä tapaukset tukevat automaatiota.
Vaihe 4) He muuntavat nämä regressiotestit skripteiksi riippuen siitä, mitkä tapaukset voidaan automatisoida.
Vaihe 5) Skriptiprosessin aikana automaatiotiimi viittaa regressiotestitapauksiin. He tekevät niin, koska heillä ei välttämättä ole tietoa tuotteesta tai työkalusta ja sovelluksesta.
Vaihe 6) Kun testiskriptit ovat valmiit, automaatiotiimi suorittaa ne uudessa sovelluksessa.
Vaihe 7) Suorituksen jälkeen tulos ilmoittaa, oliko testi hyväksytty vai hylätty.
Vaihe 8) Jos testi epäonnistuu, se tarkistetaan uudelleen manuaalisella testausmenetelmällä, ja jos ongelma ilmenee, siitä ilmoitetaan vastaavalle kehittäjälle.
Huomautus: Kun vika on korjattu, ongelma ja vaikutusalue lähetetään manuaaliselle testaajalle uudelleentestattavaksi, ja automaatiotiimi suorittaa komentosarjan uudelleen.
Vaihe 9) Tämä prosessi jatkuu, kunnes kaikki äskettäin lisätyt regressioominaisuudet saavat Pass-tilan.
Tässä ovat automaattisen regressiotestauksen edut:
- Uudelleenkäytettävä: Sen testiskriptejä voidaan käyttää uudelleen useissa julkaisuissa.
- Tarkkuus: Automaatiotyökalut suorittavat tehtävän redundantti, mikä vähentää virheiden mahdollisuutta.
- Säästää aikaa: Se on nopeampi kuin manuaalinen toiminnallinen testausprosessi ja on aikaa säästävä.
- Eräsuoritus: Kaikki skriptit on mahdollista suorittaa samanaikaisesti ja rinnakkain automaattisessa testauksessa.
- Resurssien lisäämistä ei vaadita: Regressiotesti kasvaa varmasti jokaisen uuden julkaisun myötä. Sinun ei kuitenkaan tarvitse lisätä uusia resursseja automatisointiin.
Kuinka valita testitapaukset regressiotestaukseen?
Näin voit valita oikean tapauksen regressiotestausta varten.
- Ymmärrä muutosten laajuus ja määritä sovelluksen osat, joita on muokattu, lisätty tai korjattu. Voit sitten keskittyä näihin alueisiin regressiotestausta varten.
- Hanki sarja, joka kattaa kriittiset toiminnot ja säilyttää tämän regressiotestauksen perustana. Kuten aiemmin mainittiin, on erittäin suositeltavaa automatisoida nämä testit.
- Priorisoi testit toiminnallisuuden kriittisyyden, loppukäyttäjään kohdistuvan vaikutuksen ja historiallisten virhetietojen perusteella.
Regressiotestauksen parhaat käytännöt
Alla on muutamia keskeisiä käytäntöjä, joita sinun tulee noudattaa ylläpitäessäsi regressiotestejä.
Automatisoi aina kun mahdollista
Automaattinen regressiotestaus vähentää testaustyötä ja mahdollistaa useiden testitapausten nopean suorittamisen.
Jatkuva integraatio
Regressiotestauksen sisällyttäminen CI/CD-putkiin varmistaa, että testit suoritetaan automaattisesti aina, kun koodikantaan tehdään muutoksia.
Testitapauksen valinta
Tunnista ja ylläpidä testitapauksia, jotka edustavat ydintoimintoja ja korkean riskin alueita. Voit myös valita ne, jotka liittyvät suoraan tehtäviin muutoksiin, koska kaikkien aikaisempien testitapausten suorittaminen voi olla epäkäytännöllistä.
Säännöllinen toteutus
Suorita regressiotestejä säännöllisesti, erityisesti jokaisen koodinvaihdon jälkeen. Tämä auttaa tunnistamaan ongelmat varhaisessa kehitysprosessissa.
Testitietojen hallinta
Varmista, että regressiotesteissä käytetyt testitiedot ovat johdonmukaisia ja hallittavissa, koska dataan liittyvät ongelmat voivat vaikuttaa testituloksiin.
Ympäristönhallinta
Ylläpidä johdonmukaisia ja toistettavia testiympäristöjä. Tämä sisältää samojen käyttöjärjestelmien, selaimien ja laitekokoonpanojen käytön, joita käytetään tuotannossa.
Tallenna ja jäljitä viat
Kaikki regressiotestauksen aikana havaitut viat tulee kirjata, seurata ja hallita. Priorisoi ratkaisunsa vakavuuden mukaan.
Reus Kyky
Luo uudelleenkäytettäviä testiskriptejä ja testitietoja päällekkäisyyksien vähentämiseksi ja ylläpidettävyyden parantamiseksi.
Regressiotestaus ja konfiguraatioiden hallinta
Regressiotestauksen aikana tapahtuvan konfiguroinnin hallinnasta tulee välttämätön ketterissä ympäristöissä, joissa koodia muokataan jatkuvasti. Varmistaaksesi tehokkaat regressiotestit, huomioi seuraavat asiat:
- Regressiotestattavan koodin tulee olla kokoonpanonhallintatyökalun alla.
- Regressiotestivaiheen aikana ei saa sallia muutoksia koodaukseen. Regressiotestikoodi on pidettävä immuunina kehittäjien muutoksille.
- Regressiotestaukseen käytettävä tietokanta on eristettävä. Tietokannan muutoksia ei saa sallia
Ero uudelleentestauksen ja regressiotestauksen välillä
Uudelleentestaus tarkoittaa vian tai bugin toiminnallista testausta uudelleen sen varmistamiseksi, että koodi on korjattu. Jos sitä ei korjata, vika on avattava uudelleen. Jos vika korjataan, se on suljettu.
Regressiotestaus tarkoittaa ohjelmistosovelluksen testaamista, kun se käy läpi koodin muutoksen. Näin varmistetaan, ettei uusi koodi ole vaikuttanut ohjelmiston muihin osiin.
Alla on tärkeimmät erot näiden kahden testin välillä:
Uusintatestausta | Regressiotestaus |
---|---|
Se on suunniteltu erityisesti vikojen korjaamista varten. | Regressiotestaus tehdään pääasiassa sen tarkistamiseksi, ovatko koodimuutokset vaikuttaneet muihin toimintoihin. |
Uudelleentestaus ei tarkista muita versioita, vaan vain varmistaa, että rikkinäiset toiminnot palautetaan. | Keskittyy aikaisempiin versioihin ja testaa, toimivatko aiemmat toiminnot edelleen odotetulla tavalla. |
Jokainen testi on erityinen | Regressio on yleinen testi. |
Tämä testaus on tarkoitettu epäonnistuneille testitapauksille. | Se on läpäistyjä testejä varten. |
Se tarkistaa tietyt viat, joten sitä ei voida automatisoida. | Voidaan automatisoida. Myös erittäin suositeltavaa automatisoida, kuten aiemmin keskustelimme. |
Uudelleentestaus ei aina ole osa testaussykliä, sillä sitä vaaditaan vain, kun vikoja löytyy. | Regressio on aina osa testausta, sillä aina kun koodia muutetaan, tämä testi on suoritettava, jotta saadaan selville, onko tuotteen toiminnallisuus vakaa. |
Se on korkean prioriteetin testaus, koska se keskittyy tunnettuihin ongelmiin. | Tämä on matalan prioriteetin testausta, koska se on yleistestausta mahdollisista vioista. |
Tämä testaus ei vie aikaa, koska se toimii tietyssä viassa. | Koska se kattaa suuren osan ohjelmistosta, se vie aikaa. |
Se määrittää viat samoilla tiedoilla ja ympäristöllä eri syötteellä ja uudella versiolla. | Tämä testaus voi saada tapauksia käyttöoppaista, vikaraporteista ja toiminnallisista tiedoista. |
Uusintatestausta ei voida suorittaa ilman ensimmäistä testausta. | Se tehdään, kun muutokset ja muokkaukset ovat pakollisia olemassa olevassa hankkeessa. |
Tarkista myös täydellinen luettelo eroista tätä.
Regressiotestauksen edut ja haitat
edut
- Regressiotestaus parantaa tuotteiden laatua.
- Tällä testauksella varmistat, että muutokset ja virheenkorjaukset eivät ole muuttaneet olemassa olevia toimintoja ja ominaisuuksia.
- Koska regressiopatjaa käytetään olemassa olevilla ominaisuuksilla, voimme taata, että myös vanhemmat viat katetaan.
- Se mahdollistaa tehokkaan tuotekehityksen.
- Voit saavuttaa korkean käyttäjätyytyväisyyden tällä testauksella.
- Kaiken kaikkiaan se ylläpitää ohjelmiston vakautta.
Haitat
- Se tulee tehdä joka kerta, kun tehdään pieni muutos, koska pieninkin muutos voi tuoda ongelmia olemassa oleviin moduuleihin.
- Tämä testi voi olla aikaa vievä, kun se suoritetaan manuaalisesti, ja vaatii toistuvan testauksen.
Regressiotestauksen haasteet
Seuraavat ovat tärkeimmät testausongelmat regressiotestauksessa:
- Peräkkäisillä regressioajoilla testisarjoista tulee melko suuria. Aika- ja budjettirajoitusten vuoksi koko regressiotestisarjaa ei voida suorittaa
- Testisarjan minimoiminen ja maksimin saavuttaminen on edelleen haaste
- Regressiotestien tiheyden määrittäminen eli jokaisen muokkauksen tai jokaisen koontipäivityksen tai useiden virheenkorjausten jälkeen on haaste.
Regressiotestauksen käytännön soveltaminen videon kanssa
Napauta tätä jos video ei ole saatavilla
Esimerkki regressiotestauksesta – Amazon
Ajattele sähköisen kaupan jättiläistä Amazon, joka on monen miljardin dollarin yritys, joka luottaa tulonsa tuottamiseen verkkosivustoonsa. Regressiotestauksella on keskeinen rooli sen toimivuuden, luotettavuuden ja suorituskyvyn ylläpitämiseksi.
Otetaan skenaario uuden tuoteluokan lisäämisestä.
kuvitella Amazon päättää laajentaa tuotetarjontaansa ottamalla käyttöön uuden kategorian nimeltä "Älykodin laitteet" olemassa olevien luokkien, kuten "Elektroniikka" ja "Vaatteet" rinnalle.
Mahdollisia regressiotapauksia ovat:
Kotisivun toiminnallisuus: Varmista, että kotisivulla näkyy uusi "Älykkäät kodin laitteet" -luokka olemassa olevien laitteiden rinnalla ilman näyttöongelmia.
Luokkanavigointi: Varmista, että käyttäjät voivat siirtyä sujuvasti "Älykkäät kodin laitteet" -luokkasivulle ja palata etusivulle ilman häiriöitä.
Haun toiminnallisuus: Varmista, että hakupalkki antaa tarkasti tulokset älykodin laitteista, kun käyttäjät etsivät niitä eivätkä sekoita muiden tuotteiden kanssa.
Käyttäjätilit: Varmista, että käyttäjätilejä voidaan luoda, päivittää ja käyttää kodin älylaitteiden ja muiden tuotteiden ostamiseen.
Maksun käsittely: Testaa ostoihin liittyviä maksuyhdyskäytäviä ja takaa turvalliset ja virheetön tapahtumat.
Mobiiliresponsiivisuus: Tarkista, että verkkosivusto pysyy mobiiliresponsiivisena, jolloin käyttäjät voivat käyttää älykkäitä kodin laitteita ja ostaa niitä eri laitteilla.
Jos jokin näistä regressiotestitapauksista epäonnistuu, se tarkoittaa ongelmaa verkkosivuston olemassa olevassa toiminnassa, joka johtuu uuden tuoteluokan lisäämisestä. Tämä ongelma tulee dokumentoida ja ratkaista välittömästi. Lisäksi as Amazon laajentaa edelleen tarjontaansa ja tekee muutoksia verkkosivustoonsa, nämä regressiotestit tulisi suorittaa luotettavan verkko-ostoskokemuksen ylläpitämiseksi. Automaattiset testaustyökalut voivat virtaviivaistaa tätä prosessia.
Yhteenveto
- Regressiotestauksen merkitys – Regressiotestaus on eräänlainen ohjelmistotestaus, joka varmistaa, että sovellus toimii edelleen odotetulla tavalla parannusten, koodimuutosten tai virheenkorjausten jälkeen.
- Tehokas regressiostrategia voi säästää sekä aikaa että rahaa organisaatiolle.
- Tapaustutkimusten mukaan regressio säästi jopa 60 % myöhemmistä virheenkorjauksista.