Ohjelmistojen Testaus

Aloittelijan opas ohjelmistotestauksen vioista

30. lokakuuta 2021

Täydellisessä maailmassa ohjelmistokehitys voisi sujua kitkattomasti, ja testaus- ja varmistusvaiheet olisivat nopeita, vikoja ei juuri löytyisi.

Mutta koska tämä on vain mielikuvitusta, todellisen maailman testaajien on kohdattava poikkeavuuksia ja toimintahäiriöitä jokaisessa ohjelmistosovelluksessa.

Ohjelmiston laatu määräytyy sen mukaan, kuinka puhdas tai virheetön ohjelmisto on?

Siksi on olennaista, että testaajat tarkastelevat monimutkaisia ​​monikerroksisia sovelluksia ja tunnistavat, dokumentoivat, jäljittävät ja korjaavat lukuisat virheet tai viat.

Sisällysluettelo

Mitä tarkoittaa vika?

Vika on tila, joka ilmenee ohjelmistotuotteessa, kun se ei täytä ohjelmiston vaatimuksia tai odotuksia.

Se voi olla virhe ohjelman koodauksessa tai logiikassa, joka aiheuttaa sen toimintahäiriön.

Ne määritellään sääntöjenvastaisuuksiksi tai poikkeamiksi odotetuista tuloksista, jotka johtuvat kehittäjän virheistä kehitysvaiheessa.

Viat tai virheet tai viat ovat puutteita tai epätäydellisyyksiä, jotka estävät ohjelmistosovellusta suorittamasta sitä, mitä sen odotetaan tekevän.

Viat johtavat ohjelmistosovelluksen epäonnistumiseen.

Muutamia menetelmiä, joita on käytetty estämään ohjelmoijien käyttöönotosta virheitä kehityksen aikana, ovat:

  • Vertaisarviointi
  • Koodianalyysi
  • Ohjelmointitekniikat käyttöön
  • Ohjelmistokehitysmenetelmät

Luokittelu

Alla annetut vikaluokitukset ovat vain suuntaa antavia. Vikojen luokitteluperusteet riippuvat organisaatiosta ja niiden käyttämästä vianseurantatyökalusta.

Tiimin jäsenillä tulee olla ennakkosopimus vikaluokittelusta, jota käytetään välttämään tulevat ristiriidat.

Viat voidaan luokitella seuraavien perusteella:

Vakavuus

Vian vakavuus riippuu vian monimutkaisuudesta, joka korjataan kehitysnäkökulmasta.

Vakavuuden tila antoi testaajalle käsityksen ohjelmiston poikkeamasta spesifikaatioista.

Se voi olla:

  • Kriittiset – Nämä viat kuvastavat ohjelmistosovelluksen keskeisiä toiminnallisuuden poikkeamia ilman korjaamista, joita laadunvarmistustastaja ei voi vahvistaa.
  • Suuret – Nämä viat havaitaan, kun sovelluksen tärkeä moduuli ei toimi, mutta muu järjestelmä toimii hyvin. Laadunvarmistustiimin on korjattava nämä ongelmat, mutta se voi myös vahvistaa muun sovelluksen riippumatta siitä, onko suuri vika korjattu vai ei.
  • Keskitaso – Nämä viat liittyvät yksittäisen näytön tai yksittäisen toiminnon ongelmiin, mutta ne eivät vaikuta järjestelmän toimintaan kokonaisuutena. Viat eivät estä mitään toimintoja.
  • Matala – Nämä viat eivät vaikuta ohjelmistosovelluksen toimivuuteen ollenkaan. Se voi liittyä käyttöliittymän epäjohdonmukaisuuteen, kosmeettisiin virheisiin tai ehdotuksiin käyttäjän käyttökokemuksen parantamiseksi.

Todennäköisyys

Vian todennäköisyys voidaan määritellä vian todennäköisyydeksi järjestelmän tietyssä ominaisuudessa.

Vian löytämisen todennäköisyys riippuu kyseisen ominaisuuden käytöstä. Jos attribuuttia käytetään harvoin, löydetyllä vialla on suuri mahdollisuus. Silti, jos attribuuttia käytetään laajalti, vian todennäköisyys saattaa olla pieni, riippuen vian havaitsemisen harvinaisuudesta.

Se voi olla:

  • Korkea – Jos kaikki tai useimmat ominaisuuden käyttäjät löytävät vian helposti, vian todennäköisyys on suuri.
  • Keskitaso – Jos vian havaitsee vähintään 50 % ominaisuuden käyttäjistä, vian esiintymistodennäköisyys on keskitasoinen.
  • Matala – Jos vain harvat ominaisuuden käyttäjät kohtaavat vian, vian todennäköisyys on pieni.

Prioriteetti

Tietyn korjaamisen tärkeys tai kiireellisyys määrittää vian prioriteetin.

Vian prioriteetti asetetaan a ohjelmiston testaaja ja viimeistelee projektipäällikkö.

Se voidaan luokitella seuraavasti:

  • Kiireellinen – Tämän luokan vian välitöntä ratkaisua tarvitaan, koska nämä viat voivat vaikuttaa vakavasti sovellukseen ja aiheuttaa kalliita korjauksia, jos niitä ei käsitellä.
  • Korkea – Näiden vikojen välitön ratkaiseminen on välttämätöntä, koska nämä viat vaikuttavat sovellusmoduuleihin, jotka ovat hyödyttömiä, kunnes viat on korjattu.
  • Keskitaso – Nämä eivät ole niin olennaisia ​​vikoja, ja ne voidaan ajoittaa korjattavaksi myöhemmissä julkaisuissa.
  • Matala – Kun yllä mainitut kriittiset viat on korjattu, testaaja voi korjata ne tai olla korjaamatta niitä.

Vaihe ruiskutettu

Vikojen luokittelussa voidaan käyttää myös ohjelmistokehityksen elinkaaren vaihetta, jossa vika ilmeni tai lisättiin.

Vian injektoitu vaihe löydetään asianmukaisen perussyyanalyysin jälkeen.

Vika voidaan ruiskuttaa missä tahansa seuraavista vaiheista:

  • Vaatimukset Kehittäminen
  • Yksityiskohtainen suunnittelu
  • Korkean tason suunnittelu
  • Koodaus
  • Käyttöönotto

Vaihe havaittu

Kun ruiskutettu vaihe tulee, vaihe havaitaan. Vaihetta, jossa tietty vika tunnistettiin, kutsutaan havaitsemisvaiheeksi.

Siinä on seuraavat vaiheet Ohjelmistojen testaus :

Aiheeseen liittyvä moduuli

Vian luokituksena voidaan käyttää moduulia, jossa tietty vika havaittiin.

Asiaan liittyvä moduuliluokitus antaa tietoa eniten bugeja sisältävästä moduulista.

Asiaan liittyvä laatu

Nämä ovat satoja ohjelmiston laatumittoja, kuten saavutettavuus, yhteensopivuus, samanaikaisuus ja monet muut.

Päätös siitä, kumpi ulottuvuus on tärkeämpi ja se tulisi vahvistaa ensin, on subjektiivinen. Se riippuu yksinomaan testaajan useiden arvojen ulottuvuudesta kyseisessä tilanteessa.

Vaatimukset ja tekninen vika

Asiakasvaje tai tuottaja (testaaja tai kehittäjä) aukko voi aiheuttaa vaatimuksiin liittyviä puutteita, joissa kehittäjä tai testaaja ei ymmärrä asiakkaan vaatimuksia.

Vaatimusasiakirjat tulee laatia yksiselitteisin, ristiriitaisin, selkein, ei-redundantsin ja täsmällisin vaatimuksin näiden vikojen vähentämiseksi.

Suunnitteluvirheitä

Yhteensopimattomien tai väärin suunniteltujen komponenttien ja moduulien välinen vuorovaikutus johtaa järjestelmän virheisiin.

Algoritmit, logiikka- tai dataelementit, moduulirajapintojen kuvaukset, algoritmit ja ulkoisen ohjelmiston tai laitteiston käyttöliittymäkuvaukset tulee suunnitella oikein suunnitteluvirheiden välttämiseksi.

Koodausvirheitä

Suunnitelmien tai koodien väärä toteutus kehitys- tai koodausstandardien puuttumisesta voi aiheuttaa koodausvirheitä.

Nämä viat liittyvät läheisesti luokkien suunnitteluvirheisiin, ensisijaisesti jos pseudoluokkia käytetään yksityiskohtaisessa suunnittelussa.

Joskus voi olla haastavaa luokitella vika koodaus- tai suunnitteluvirheeksi.

Testaus viat

Väärä testaus tai viat testausartefakteissa johtavat testausvirheisiin.

Näitä voi olla kolmea tyyppiä:

  • Testityökaluvika – Testaajien käyttämät testityökalut voivat myös tuoda vikoja ohjelmistoon. A manuaalinen testi käytetään automaattisten työkalujen aiheuttamien vikojen etsimiseen.
  • Testisuunnitteluvirhe – Vikoja testausartefakteissa, kuten testisuunnitelmissa, testiskenaarioissa, testidatan määritelmissä ja testitapauksissa, kutsutaan testisuunnitteluvirheiksi.
  • Testiympäristövika – Kun testiympäristöä, eli laitteistoa, ohjelmistoa, testaushenkilöitä ja simulaattoria ei ole asetettu, syntyy testiympäristövirheitä.

Tila

Vika voidaan luokitella sen vian elinkaaren tilan tai tilan perusteella, jossa vika tällä hetkellä on.

Nämä tilat voivat olla:

  • Avata
  • Suljettu
  • Lykätty
  • Peruutettu

Word tuote

Työtuotteen tai kehitysvaiheen asiakirjojen tai lopputuotteiden perusteella vika voidaan luokitella seuraavasti:

  • Lähdekoodi – Sovelluksen lähdekoodista löytynyt vika.
  • SSD – Vika, joka löytyi ohjelmiston System Study -asiakirjasta.
  • User Documentation – Vika, joka löytyy ohjelmiston käyttöoppaista tai käyttöohjeista.
  • ADS – Ohjelmiston arkkitehtonisesta suunnitteluasiakirjasta löytynyt vika.
  • Testisuunnitelma tai testitapaus – ohjelmiston testisuunnitelmassa tai testitapauksissa havaittu vika.
  • FSD – Ohjelmiston Functional Specification -asiakirjasta löytynyt vika.
  • DDS – Ohjelmiston yksityiskohtaisesta suunnitteluasiakirjasta löytynyt vika.

Tyypit

Muutamia ohjelmistokehityksen perusvikojen tyyppejä ovat:

Vikojen tyypit

Loogiset viat

Koodin toteutuksen aikana ohjelmoija ei ehkä ymmärrä ongelmaa selvästi tai ajattelee väärin. Tällaisissa tapauksissa tapahtuu loogisia virheitä.

Loogiset viat liittyvät ohjelmiston ytimeen ja voivat ilmetä, jos ohjelmoija ei toteuta kulmatapauksia asianmukaisesti.

Suorituskykyvirheet

Kun järjestelmä tai ohjelmistosovellus ei tuota haluttuja ja odotettuja tuloksia eikä pysty täyttämään käyttäjän vaatimuksia, ilmenee suorituskykyvirheitä.

Näihin virheisiin kuuluu myös järjestelmän vaste järjestelmän kuormituksen vaihteluun.

Monisäikeiset viat

Useiden tehtävien suorittamista samanaikaisesti kutsutaan multithreadingiksi, ja se johtaa erittäin monimutkaiseen virheenkorjaukseen.

Deadlock- ja Starvation-ongelmat monisäikeisessä käytössä voivat johtaa järjestelmän epäonnistumiseen.

Aritmeettiset viat

Liiallinen työmäärä tai vähemmän tietoa voi saada ohjelmoijan tekemään virheitä aritmeettisissa lausekkeissa ja niiden ratkaisuissa, joita kutsutaan aritmeettisiksi virheiksi.

Koodiruuhkat voivat estää ohjelmoijan lukemasta kirjoitettua koodia oikein ja voivat myös aiheuttaa aritmeettisia virheitä.

Syntaksivirheet

Joskus kehittäjät tekevät koodia kirjoittaessaan virheitä, jotka liittyvät koodin tyyliin tai syntaksiin.

Nämä virheet voivat olla niin pieniä kuin symbolin jättäminen pois.

Esimerkki syntaksivirheistä voi olla puolipisteen pois jättäminen (;) kirjoitettaessa koodia C++- tai Java-kielellä.

Käyttöliittymän vikoja

Viat voivat vaikuttaa käyttäjän ja ohjelmiston väliseen vuorovaikutukseen. Näitä kutsutaan käyttöliittymävirheiksi.

Monimutkaiset, epäselvät tai alustapohjaiset rajapinnat voivat aiheuttaa käyttöliittymävirheitä ohjelmistossa.

Vikamittarit

Tarkka arvio testattavan projektin laadusta, kustannuksista ja tehokkuudesta on olennaista.

Vikamittarit auttavat meitä arvioimaan ohjelmistosovelluksen aiemmin mainitut näkökohdat.

Vikatiheysmittarit

Ohjelmiston sisällä olevien vikojen paksuutta tai pitoisuutta kutsutaan vikatiheyden mittareiksi.

Vikatiheysmittarit voidaan määritellä prosenttiosuutena havaittujen vikojen määrästä vaatimusta tai testitapausta kohti.

Kaava:

|_+_|

Missä koko on vaadittujen testitapausten lukumäärä.

Esimerkki:

Oletetaan, että ohjelmistossa on 1000 testitapausta, joista 600 on hyväksytty ja 400 epäonnistunut. Vian tiheys tässä tapauksessa on

|_+_|

Siten vikojen tiheys on 40 %. Näin ollen 40 % testitapauksista epäonnistui suorituksen aikana tai vain 40 % testisuunnittelusta saattoi havaita vikoja.

Kokonaisvikamittarit

Suhteellinen arvio kokonaisvirheistä v/s moduulikokoon ja ohjelmiston monimutkaisuuteen voi selittää testaustoimien tehokkuuden.

Kukaan ei voi uskoa kehittäjää, joka sanoo, että ohjelmistossa on nolla vikaa.

Vikojen jakautuminen tärkeysjärjestyksen ja vakavuuden mukaan

Olemme jo ymmärtäneet, että viat luokitellaan niiden prioriteetin ja vakavuuden perusteella.

Jos kaikki havaitut viat ovat vakavia tai ensisijaisia ​​vikoja, tämä tarkoittaa, että testiryhmä ei ole testannut järjestelmää kunnolla.

Vikojen kokonaismäärä antaa hyvän käsityksen testaustoimista, ja prioriteetti ja vakavuus voivat auttaa testaamisessa ja rakennuslaadussa.

Painotettu virhetiheys

Keskimääräinen vian vakavuus testitapausta kohti voidaan määritellä painotetuksi vikojen tiheydeksi.

Kaava:

|_+_|

Jos koko on testitapausten tai vaatimusten lukumäärä.

Vakavuuden perusteella painot 5,3 ja 1 määrätään.

Vian etsimisen kustannukset

Olipa kyseessä kehitys tai testaus, kustannuksilla on olennainen tekijä kaikissa projekteissa.

Jos asiakas maksaa valtavia summia, hän odottaa, että toimitettu ohjelmisto on virheetön ja tehokas.

Kaava:

|_+_|

Kokonaissumma voidaan laskea käyttämällä täydellisiä resursseja, laskutushintoja ja testauksen kestoa.

Vikojen poiston tehokkuus

Testaustiimin osaamista poistaa tehokkaasti ja tunnistaa vikojen enimmäismäärä ennen ohjelmiston lähettämistä seuraavassa vaiheessa kutsutaan vianpoistotehomittariksi.

Kaava:

|_+_|

Esimerkki:

Harkitse ohjelmistoa, jossa on 200 virhettä alkuvaiheessa. Ohjelmiston korjauksen, uudelleentestauksen ja regressiotestauksen suorittamisen jälkeen User Acceptance Team testaa ja löytää 40 muuta vikaa, jotka olisi voitu tunnistaa ja korjata aikaisemmissa testausvaiheissa. Nämä 40 vikaa vuotivat seuraaviin vaiheisiin, eikä niitä poistettu järjestelmästä. Täten,

|_+_|

Siten ohjelmistotestaustiimi pystyi tunnistamaan ja korjaamaan vain 83,33 % kaikista vioista ja vuoti loput 16,67 % seuraavissa vaiheissa.

Vikavuodon mittarit

Toisin kuin vian poistaminen, vikavuotometriikka näyttää niiden vikojen prosenttiosuuden, jotka ovat vuotaneet nykyisestä testausvaiheesta seuraavaan tai seuraavaan vaiheeseen.

Vikavuotomittareiden tulee olla minimaalisia joukkueen arvon parantamiseksi.

Kaava:

|_+_|

Esimerkki:

Harkitse ohjelmistoa, jossa on 200 virhettä alkuvaiheessa. Ohjelmiston korjauksen, uudelleentestauksen ja regressiotestauksen suorittamisen jälkeen User Acceptance Team testaa ja löytää 40 muuta vikaa, jotka olisi voitu tunnistaa ja korjata aikaisemmissa testausvaiheissa. Nämä 40 vikaa vuotivat seuraaviin vaiheisiin, eikä niitä poistettu järjestelmästä. Täten,

|_+_|

Siksi 16,67 % vioista vuoti seuraavaan vaiheeseen.

Vika Ikä

Vikojen elinkaari alkaa uuden vian tunnistamisesta ja päättyy, kun ne korjataan tai säilytetään seuraavaa julkaisua varten ja dokumentoidaan.

Vian ikä on aika, joka kuluu vian tunnistamisen ja korjaamisen välillä.

|_+_|

Vika voi esiintyä tunneissa tai päivissä – mitä pienempi vika on, sitä parempi on testaustiimin reagointikyky.

Vikojen luokitus

Kaikki viat eivät ole samanlaisia ​​tai vaativat testaajien välitöntä huomiota.

Tästä syystä on välttämätöntä luokitella viat.

Viat määritellään vakavuus- tai tärkeysasteen mukaan, jotta kehitystiimi ymmärtää, kumpi on ratkaistava ensin.

1. Vian vakavuus

Vian vakavuus tai vian vakavuus , joka tarkoittaa maallikollisesti, voidaan selittää vian vaikutukseksi ohjelmiston kehitykseen tai toteutukseen.

ISTQB:n mukaan vian vakavuus voidaan määritellä vian vaikutuksen asteena järjestelmän komponentin tai koko järjestelmän kehitykseen tai toimintaan.

Laadunvarmistustiimin vastuulla on määrittää kunkin havaitun vian vakavuusaste.

Tehokkailla vikojen vakavuustoimenpiteillä laadunvarmistustiimi voi ratkaista kriittiset viat ja muut järjestelmän vakavuusasteet hallitakseen loppukäyttäjän mahdollisia liiketoimintavaikutuksia.

Esimerkki:

Lisää koriin -kohdan kirjoitusvirhe on ei-kriittinen virhe, mutta se, että Lisää ostoskoriin -toiminnon toimivuus verkkokauppasivustolla ei toimi, on kriittinen virhe.

Miksi se on tärkeää?

Ongelman vakavuusasteiden määrittämisen merkitys on:

  • Testausryhmät voivat määrittää testausprosessin tehokkuuden.
  • Ohjelmiston eri osien virheellinen toiminta voidaan helposti tarkistaa.
  • Virheiden seurantaa lisätään vian vakavuuden avulla, mikä parantaa ohjelmiston laatua.
  • Laadunvarmistustiimi voi ensin määrittää ja testata vakavammat viat.
  • Virheiden seuranta- ja hallintajärjestelmät voivat tulla systemaattisemmiksi ja organisoidummiksi käyttämällä vian tai vian vakavuutta.
  • Vikoja voidaan kohdentaa tehokkaammin kehittäjän taitojen ja kokemustason sekä vakavuuden ja tason mukaan.

Vikatyypit vian vakavuuden mukaan

Vian vakavuuden perusteella ohjelmistossa on neljä vakavuustasoa:

(i) Kriittinen

S1 edustaa tätä vakavuusastetta tai korkeimman prioriteetin vakavuutta, joka ohjelmistosta löytyy.

Nämä vikatyypit estävät ohjelmiston suorittamisen kokonaan ja aiheuttavat joskus järjestelmän täydellisen sammumisen.

On äärimmäisen tärkeää poistaa nämä viat, koska niillä ei ole kiertotapaa ja ne häiritsevät ohjelmiston jatkotestausta.

varten esimerkki , jopa oikean tunnuksen ja salasanan syöttämisen jälkeen käyttäjä ei voi kirjautua sisään ja käyttää sovellusta on kriittinen vika.

(ii) Majuri

Merkittävä vika ilmenee, kun järjestelmälle annetaan joukko syötteitä, mutta se ei pysty tarjoamaan haluttuja tuloksia. S2 edustaa sitä.

Nämä viat voivat aiheuttaa järjestelmän kaatumisen, mutta silti jättää joitakin toimintoja toimiviksi, jolloin jää pieni tila niiden kiertämiselle lisätestausta varten.

varten esimerkki , se, että verkkokauppasivustolla ei voi lisätä useampaa kuin yhtä tuotetta ostoskoriin, on merkittävä puute, mutta ei kriittinen, koska käyttäjä voi silti ostaa yhden tuotteen.

(iii) Pieni

Kun komponentti ei tuota odotettuja tuloksia tai täytä vaatimuksiaan, mutta sillä on mitätön vaikutus koko järjestelmään, kutsutaan vähäiseksi tai kohtalaiseksi viaksi.

S3:n edustamat pienet viat vaikuttavat vain pieneen osaan sovelluksesta, mikä saa ohjelmiston käyttäytymään luonnottomalla tavalla, mutta vaikuttaa koko järjestelmään.

varten esimerkki , myös tuotteiden tilauksen jälkeen tuote näkyy tilatuissa tuotteissa ja sitä voidaan seurata, mutta näyttöön tulee viesti Tuote ei tilattu -kehoteikkunasta. Tämä on pieni vika, koska kehote on vain väärä.

(iv) Triviaali

Vikavirheet ovat vähäisiä vikoja, jotka vaikuttavat vain ohjelmiston ulkoasuun, mutta eivät vaikuta järjestelmän tai ohjelmiston toimivuuteen tai toimintahäiriöön.

Tämä vakavuustason S4-vika ei välttämättä vaikuta toimivuuteen, mutta on silti pätevä vika ja se on korjattava.

varten esimerkki , Sivuston käyttöehdot-sivun kohdistus- tai kirjoitusvirhe on vähäpätöinen virhe.

Ole varovainen ennen kuin määrität vakavuustason

Koska vikojen vakavuus on olennainen osa ohjelmistotestausta, niitä määriteltäessä tulee noudattaa suurta varovaisuutta.

Jokainen vakavuusaste on määriteltävä selvästi, koska tämä voi johtaa eroihin kehitys- ja laadunvarmistustiimin välillä.

2. Vian prioriteetti

Vian ratkaisemisen tärkeys tai kiireellisyys määräytyy vian tai vian prioriteetin mukaan.

The projektipäällikkö määrittää kunkin vian prioriteetin käyttäjän liiketoimintatarpeiden ja vian vakavuuden perusteella.

Vian prioriteetti on subjektiivinen, koska se määräytyy vertailun jälkeen muihin vioihin.

Projektipäällikön lisäksi tuotteen omistajat, yritysanalyytikot ja liiketoiminnan sidosryhmät määrittelevät vikojen korkeamman tai alemman prioriteetin.

Vikatyypit vikojen prioriteetin perusteella

Vikojen luokittelussa on neljä prioriteettitasoa:

(i) Välitön

Järjestelmään ja liiketoiminnan vaatimuksiin vaikuttavat viat on korjattava välittömästi.

P1:n edustamat viat estävät järjestelmää suorittamasta ydintoimintojaan tai tekevät järjestelmästä epävakaa, mikä rajoittaa lisätestausta.

Kaikilla kriittisillä vakavuusvirheillä on välitön prioriteetti, elleivät yritykset/sidosryhmät priorisoi järjestystä uudelleen.

varten esimerkki , Väärin kirjoitettu yrityksen nimi ei välttämättä ole suuri tai kriittinen vakavuusvirhe, mutta se on välitön prioriteetti, koska se vaikuttaa sen liiketoimintaan.

(ii) Korkea

Nämä P2 tai korkean prioriteetin viat ovat seuraavaksi ratkaistavaksi, kun välittömät prioriteetit on korjattu.

Viat, jotka eivät täytä 'poistumiskriteereitään' tai saavat komponentin poikkeamaan ennalta määritellyistä suorituskykymittareista. Nämä toimenpiteet voivat olla riippuvaisia ​​koodauksesta tai ympäristötekijöistä.

Vika ei vaikuta suoraan yritykseen tai asiakkaaseen, mutta se on kuitenkin kiireellisesti korjattava.

varten esimerkki , tuotteiden lisäämättä jättäminen ostoskoriin kuuluu korkean prioriteetin luokkaan.

(iii) Keskikokoinen

Virheet, jotka eivät kuulu korkeaan ja välittömään luokkaan, kuuluvat keskitason prioriteettiin.

Nämä viat on korjattava heti, kun edellä mainitut on korjattu, koska ne voivat sisältää toimivuuteen liittyviä puutteita.

P3:n edustamat viat voivat joskus sisältää triviaaleja tai kosmeettisia virheitä, kuten virheellisiä virheilmoituksia vian aikana.

Nämä viat voidaan myös korjata seuraavissa julkaisuissa.

varten esimerkki , jopa onnistuneen sisäänkirjautumisen jälkeen tulee virheilmoitus kirjautumistunnuksesta/salasanasta, jolloin kyseessä on keskitason virhe.

(iv) Matala

Nämä ovat enimmäkseen vähän vakavia vikoja, jotka eivät vaadi välitöntä huomiota ja jotka voidaan ratkaista, kun muut kriittiset ja olennaiset viat on korjattu.

P4:n edustamat viat voivat olla kirjoitusvirheitä, kosmeettisia virheitä tai ehdotuksia, jotka liittyvät parannuksiin käyttökokemuksen parantamiseksi.

Koska ne eivät vaadi välitöntä huomiota, ne voidaan ratkaista tulevaisuudessa.

varten esimerkki , Yhteystiedot-välilehti ei sijaitse kotisivulla ja on piilotettu navigointipalkin toisen valikon sisällä.

Ohjeita ennen prioriteetin ja vakavuuden valitsemista

Jotta kehitys- ja testaustiimien välinen asiointi ja viestintä sujuvat sujuvasti, tietyt ohjeet on päätettävä ennen vakavuus- ja prioriteettitason valitsemista.

Jotkut näistä ohjeista ovat:

  • On tärkeää ymmärtää vakavuuden prioriteetin käsite.
  • Ennen kuin päätät vian vaikutuksen, ymmärrä vian prioriteetti käyttäjälle.
  • Listaa kaikki vian esiintymiseen ja toimintaan liittyvät sekvenssit.
  • Eristä ensin vika ja määritä sitten sen iskun syvyys.
  • Määritä kunkin vian korjaamiseen tarvittava aika monimutkaisuuden ja todentamisajan perusteella.
  • Määritä syötteen luokka, jota vika tukee.
  • Määritä vakavuusaste vian tyypin perusteella, sillä se määrittää myös sen prioriteetin.

Ero vian vakavuuden ja prioriteetin välillä

Vian vakavuus Vian prioriteetti
Se on vian vaikutuksen aste järjestelmään.Se on järjestys, jossa kehittäjä korjaa vian.
Laadunvarmistustajat määrittävät vakavuuden.Tuotepäälliköt ja muut liiketoiminnan sidosryhmät asettavat tärkeysjärjestyksen.
Vakavuus, kun se kerran on päätetty, ei muutu ajan myötä.Vian prioriteetti voi muuttua vertailun perusteella muihin vioihin.
Sitä on neljää tyyppiä: CriticalMajorMinorTrivialSitä on neljää tyyppiä: ImmediateHighMediumLow
Se osoitti vian vakavuuden.Se ilmaisee vian liiketoiminnallisen merkityksen ja kuinka pian se on korjattava.
Vakavuus perustuu toiminnallisuuteen, johon vika vaikuttaa.Prioriteetti perustuu liiketoiminnan arvoon, johon vika vaikuttaa.
SIT:n aikana viat korjataan ensin vakavuuden ja sitten prioriteetin perusteella.UAT:n aikana viat korjataan prioriteetin perusteella.

Vakavuuden ja prioriteetin yhdistäminen

Koska prioriteetti ja vakavuus ovat kaksi tärkeintä vikojen luokittelua, monet organisaatiot yhdistävät vakavuus- ja prioriteettitason eri tasojen määrittelemiseksi.

1. Korkea prioriteetti, suuri vakavuus

Kriittiset tai suuret liiketoimintavaatimusten puutteet kuuluvat tähän luokkaan, ja ne on korjattava välittömästi, koska lisätestausta ei voida suorittaa ennen kuin ne on korjattu.

varten esimerkki , kun olet maksanut ostoskorissasi olevat tuotteet verkkokauppasivustolla, tuotetta ei edelleenkään ole tilattu, mutta maksu tililtäsi on vähennetty.

2. Korkea prioriteetti, alhainen vakavuus

Viat, jotka eivät vaikuta toiminnalliseen vaatimukseen, mutta vaikuttavat liiketoiminnan vaatimukseen tai käyttökokemukseen, kuuluvat tähän kategoriaan.

varten esimerkki , verkkosivuston kirjasimet ja kohdistus eivät ole käyttäjäystävällisiä, silloin harvemmat asiakkaat napsauttavat verkkosivustoa, mikä vaikuttaa liiketoimintaan.

3. Korkea vakavuus, matala prioriteetti

Nämä viat ovat toiminnallisten vaatimusten kannalta erittäin vakavia, mutta ne eivät vaikuta liiketoiminnan vaatimuksiin.

varten esimerkki , sovellusta voi käyttää vain tietyn selaimen uudemmista versioista, joissa on suuri vakavuus mutta alhainen prioriteetti.

4. Matala vakavuus, matala prioriteetti

Kirjoitusvirheet, fontit, kohdistusvirheet sovelluksen myöhemmillä sivuilla, joita käyttäjät eivät usein pääse käsiksi, kuuluvat tähän luokkaan.

varten esimerkki , kirjoitusvirheet käyttöehtosivulla tai tietosuojakäytäntösivuilla ovat heikkolaatuisia ja alhaisen prioriteetin vikoja.

3. Vian todennäköisyys

Vian todennäköisyys on todennäköisyys sille, että käyttäjä näkee vian.

Vian todennäköisyyttä voidaan kutsua myös vian näkyvyydeksi, vian näkyvyydeksi tai vian todennäköisyydeksi, ja se ilmaistaan ​​prosentteina (%).

Vian todennäköisyys määritetään tietyn ominaisuuden tai komponentin, mutta ei koko järjestelmän osalta.

Näin ollen matalan todennäköisyyden vika saattaa esiintyä laajalti käytetyssä ominaisuudessa, kun taas suuren todennäköisyyden vikaa käytetään harvoin.

Vian todennäköisyyden tyypit

(i) Korkea

Suuren todennäköisyyden viat ovat sellaisia, jotka käyttäjät voivat helposti kohdata.

Nämä viat ovat läsnä lähes kaikissa käyttäjän pääsyn ominaisuuksissa.

(ii) Keskikokoinen

Jos tiettyä ominaisuutta testattaessa yli 50 % sen käyttäjistä havaitsee vian, vika luokitellaan keskitodennäköisyydeksi.

(iii) Matala

Pienen todennäköisyyden vikoja kohtaavat vain harvat käyttäjät, eikä niitä tarvitse korjata heti.

Vian elinkaari

Vian elinkaari tai vian elinkaari on määritellyt joukon tiloja, jotka vika käy läpi koko elinkaarensa aikana ja jotka havaitaan ratkaistuksi/hylätyksi/lykätyksi.

Virheen elinkaari voidaan ymmärtää bugin kasvusyklinä, joka on määritelty helpottamaan eri tiimien välistä koordinointia ja viestintää.

Virhekierto vaihtelee organisaation, työkalujen (JIRA, QC jne.) ja projektin tyypin mukaan.

Vikavaltiot

Ohjelmistotestauksessa vian tai vian elinkaaressa on erilaisia ​​tiloja. Ne ovat seuraavat:

Uusi: Kun testausryhmä havaitsee virheen tai virheen kehitetyssä sovelluksessa, ohjelmiston bugisykli käynnistyy ja bugin sanotaan olevan uudessa tilassa.

Määrätty: Kun vika on löydetty, testijohto tai projektipäällikkö hyväksyy vian ja antaa sen kehitystiimille muuttamalla vian tilaksi Assigned.

Avata: Kun kehitystiimi pitää vian käsittelyssä, sille määritetään avoin tila. Kehittäjät saattavat alkaa korjata virhettä, jos se ei kuulu seuraaviin vian elinkaaren luokkiin:

    Hylätty:Jos kehittäjä ei pidä virhettä aidona tai koodausvirheenä, vian tilaksi muutetaan Hylätty. Vika voidaan hylätä, jos se on kopio, ei-toistettavissa tai ei ole ollenkaan vikaa.Kopio:Jos vika toistuu tai vastaa toista vikalokin vikaa samalla konseptilla, tällaiset viat asetetaan Duplicate-tilaan.Lykätty:Jos vika ei ole korkeampi prioriteetti ja se voidaan lykätä korjattavaksi myöhemmissä julkaisuissa, vian tilaksi virhesyklissä muutetaan Viivästetty. Jotkut tapauksista, joissa vialle voidaan määrittää viivästetty tila, ovat:
    • Vika odotetaan korjattavan myöhemmissä versioissa.
    • Vika on pieni eikä vaadi välitöntä huomiota.
    • Asiakas saattaa muuttaa asiakkaan vaatimuksia.
    • Virhe ei liity ohjelmiston nykyiseen koontiversioon.
    Ei bugi:Vikaa testattaessa, jos vika ei vaikuta sovellukseen, vialle annetaan vian elinkaaren aikana Ei vika -tila.

Korjattu: Vian korjaamisen jälkeen kehitystiimi siirtää vian testaustiimille uudelleen testattavaksi antamalla sille Fixed-tilan.

Odottaa uudelleentestausta: Kun testausryhmä vastaanottaa korjatun tilan vian vian elinkaaren edellisestä vaiheesta, bugille määritetään Odottaa uudelleentestauksen tila.

Testaa uudelleen: Kun sovelluksen uusintatestaus on alkanut tarkistaa, onko vika korjattu vai ei, vialle annetaan Retest-tila. Kun vian uudelleentestaus on valmis, testausryhmä voi määrittää sille jommankumman virhesyklin kahdesta tilasta:

Avaa uudelleen: Jos vikaa ei korjata uudelleentestauksen jälkeenkään, testaus antaa bugille Reopen-tilan ja lähettää sen takaisin kehitystiimille.

Vahvistettu: Jos vika on korjattu kokonaan, vialle annetaan Vahvistettu-tila, mikä tarkoittaa, että vika on korjattu ja laadunvarmistusviranomainen varmentanut.

Suljettu: Kun kehittäjä on korjannut vian ja testaaja on vahvistanut, vian tilaksi muutetaan Suljettu. Vian elinkaari myös päättyy tämän tilan valmistuttua.

Vian elinkaariohjeet

On olemassa erityisiä ohjeita, jotka on otettava huomioon ennen vian elinkaaren tilojen määrittelemistä. He ovat:

  • Tiimin johtajan tai projektipäällikön tulee varmistaa, että tiimin jäsenet tietävät vastuunsa virheestä ja sen tilasta.
  • Vian tila tulee määrittää ja säilyttää.
  • Varmista, että koko vian elinkaari on hyvin dokumentoitu ja jokainen tiimisi jäsen ymmärtää sen.
  • Ennen vian tilan muuttamista on ilmoitettava uskottava ja yksityiskohtainen syy.

Vian syyanalyysi

Nyt kun olemme nähneet viat ja vikojen elinkaariluokituksen, katsotaanpa vikojen perussyyanalyysiä (RCA) ymmärtääksemme sen perimmäiset syyt.

Jos tämä analyysi tehdään systemaattisesti, niin nykyinen ohjelmisto hyödyttää paitsi koko organisaatiota.

Perussyyanalyysi auttaa löytämään vikoja varhaisessa vaiheessa, mikä vähentää niiden korjaamisen kokonaiskustannuksia pitkällä aikavälillä. Se voidaan tehdä suunnitteluvirheille, testausvirheille sekä tuotevirheille.

Muista kuitenkin, että juurisyyanalyysin tarkoituksena ei ole hoitaa tai ratkaista vikoja, vaan ainoastaan ​​löytää tai diagnosoida ne.

Kun harkitsemme jääkaapin mekaanikon tapaustutkimusta, voimme ymmärtää perussyyanalyysiä paremmin. Hyvä mekaanikko löytää ensin jääkaapin ongelmien perimmäisen syyn ja sitten käyttää asianmukaisia ​​menetelmiä sen korjaamiseksi.

Perussyyanalyysiä voidaan pitää käänteissuunnittelumekanismina, jossa tapahtumaketju kulkee taaksepäin viimeisestä mahdollisesta toiminnasta alkaen.

Prosessi (5W1H-menetelmä)

Alla olevien neljän kysymyksen avulla voidaan suorittaa juurisyyanalyysi:

Mitä?

Ensimmäinen ja olennainen vaihe perussyyanalyysiprosessissa on määrittää, MIKÄ ongelma on.

On mahdotonta määrittää ongelman perimmäistä syytä, jos emme tiedä tarkalleen ongelmaa.

varten esimerkki , verkkosivustosi käyttäjät ovat valittaneet, etteivät he voi kirjautua sisään oikealla tunnuksella ja salasanalla.

Kun?

Seuraava vaihe on määrittää, milloin tietty ongelma on ilmennyt.

Esimerkiksi Käyttäjät eivät voineet kirjautua sisään kello 4.00–5.00.

Missä?

Tämä vaihe määrittää, missä ongelma esiintyi, eli millä verkkosivuston sivulla tai ohjelmiston sijainnilla.

varten esimerkki , käyttäjät eivät voineet kirjautua sisään kirjautumissivulle, joten ongelma ilmeni kirjautumissivulla.

WHO?

Tämä kysymys koskee henkilöä, joka oli mukana ongelman ratkaisemisessa.

varten esimerkki , palvelimen ylläpitäjä vastasi palvelimen ylläpidosta, mikä johti kirjautumisongelmiin käyttäjien kanssa.

Miksi?

Tämä vaihe käsittelee ongelman syyn tunnistamista ja sen taustalla olevan perimmäisen syyn yksityiskohtaista analyysiä.

varten esimerkki , palvelimet olivat pois käytöstä huollon vuoksi, mikä häiritsi käyttäjien kirjautumista.

Miten?

Tämä on viimeinen vaihe juurisyyanalyysiprosessissa. Se auttaa meitä varmistamaan, että ongelma ei toistu tulevaisuudessa.

varten esimerkki , varmistamalla, että sähköposti tai tekstiviesti lähetetään kaikille rekisteröityneille käyttäjille aina kun järjestelmä on kunnossa, auttaa meitä estämään sen esiintymisen tulevaisuudessa.

Vaiheittainen syyanalyysi

On välttämätöntä ottaa käyttöön rakenteellinen ja organisoitu lähestymistapa perussyyanalyysiin.

Noudatettavat vaiheet ovat:

1. Muodosta perussyyanalyysiryhmä

Jokaisen tiimin tehtävänä on olla RCA-päällikkö, joka kerää ongelmiin liittyvät tiedot ja käynnistää RCA-prosessin.

Jokaisen tiimin henkilöstön eli vaatimusten, testauksen, laadun, suunnittelun, tuen ja ylläpidon sekä dokumentoinnin tulee olla RCA-tiimissä.

Jokainen joukkue on vastuussa vian jäljittämisestä ja sen selvittämisestä, mikä meni vikaan omassa vaiheessaan tapausraportin, ongelman todisteiden jne. avulla.

2. Määrittele

Kun tapahtumaraportti, ongelman todisteet ja muut asiakirjat on kerätty, RCA-tiimi tutkii ongelmaa ja yrittää määrittää:

Tapahtumasarja, joka johtaa käyttäjän ongelmaan,

  • Ongelmaan liittyvät järjestelmät,
  • Ongelman aika,
  • Ongelman vaikutus ja
  • Ongelmaan osallistuva henkilö.

3. Tunnistaminen

Ongelman määrittämisen jälkeen RCA-tiimi voi käyttää Fishbone- tai 5 Why Analysis -työkalua selvittääkseen perimmäisen syyn.

RCA-päällikkö auttaa sitten määrittämään säännöt aivoriihitapahtuman sujuvaa toimintaa varten.

4. Perussyyn korjaavan toiminnan toteuttaminen (RCCA)

Toimituspäällikön avulla määritetään toimituspäivämäärä ja korjausta vaativat versiot, jonka jälkeen aloitetaan korjaustoimet.

Esimerkiksi kun tukitiimi tarjoaa käyttäjille korjauksen heidän ongelmaansa, se on väliaikainen. RCCA-toteutus tarjoaa pysyvän korjauksen, jotta vika ei toistu tulevaisuudessa.

5. Perussyyn ennaltaehkäisevän toiminnan toteuttaminen (RCPA)

RCPA käsittelee tällaisten vastaavien ongelmien estämistä tulevaisuudessa päivitetyllä ohjekirjalla, päivitetyllä tiimin arvioinnin tarkistuslistalla, parannetulla taitosarjalla jne.

Perussyyanalyysin edut

RCA auttaa

  • Samojen asioiden käsittelyn vähentäminen yhä uudelleen ja uudelleen.
  • Toistuvien ongelmien ehkäisy.
  • Vähentää ongelmien korjaamisen kustannuksia.
  • Tarjoaa asiakkaille ja sidosryhmille mitättömiä vikoja ohjelmistoja

Virhe vs vika vs epäonnistuminen

Yleensä testausaloittelijat ovat hämmentyneitä siitä, mitä termiä tulisi käyttää järjestelmän/sovelluksen poikkeavuudesta tai odottamattomasta lähdöstä.

He kutsuvat näitä poikkeavuuksia virheiksi, bugeiksi, vikoiksi tai epäonnistumisiksi ja käyttävät näitä termejä vaihtokelpoisesti ymmärtämättä selvästi, mitä ne tarkoittavat.

Katsotaan kuinka virheet, viat ja viat eroavat toisistaan.

Ehdot

Ensin keskustellaan muutamista erilaisista termeistä, joita aloittelijatestaajat käyttävät.

Virhe: Virhe voi olla virhe, väärinkäsitys tai kehittäjän tekemä väärinkäsitys. Kehittäjät voivat olla ohjelmoijia, ohjelmistoinsinöörit , analyytikot ja testaajat. Virhe aiheuttaa muutoksia ohjelman toimivuuteen. Saattaa esimerkiksi käydä niin, että ohjelmaa kirjoitettaessa muuttujan nimeä käytetään väärin. Tämä voi johtaa silmukointiin tai muihin syntaktisiin virheisiin.

Vika: Se on kohta, jossa sovellus tai ohjelmisto poikkeaa asiakkaan vaatimuksista. Se voi olla mikä tahansa ongelma, joka liittyy järjestelmän ulkoiseen tai sisäiseen käyttäytymiseen ja ominaisuuksiin.

Virhe: Testaajan löytämää virhettä kutsutaan virheeksi. Virhe, jos sitä ei käsitellä oikein, saattaa joutua asiakkaalle ja saa ohjelman toimimaan huonosti ja tuottaa odottamattomia tuloksia. Se voi myös johtaa sovelluksen kaatumisiin.

Väärä: Kun kehitettyä ohjelmistoa ei ole toteutettu vaatimusten mukaisesti, sen sanotaan olevan väärä.

Extra: Se on ohjelmiston ei-toivottu tai määrittelemätön osa, jota ei ole määritelty käyttäjän vaatimuksessa. Käyttäjä saattaa vaatia tätä attribuuttia tai ei, ja siksi sitä pidetään puutteena.

Vika: Virheet voivat johtaa virheisiin. Se on ohjelman virheellinen vaihe, prosessi tai määritelmä, joka saa sen toimimaan väärin. Vika on poikkeama, joka saa ohjelman toimimaan odottamattomalla, odottamattomalla tai tahattomalla tavalla.

Puuttuu: Ylimääräisen vastakohtana puuttuminen on vian luokittelu, kun ohjelmisto ei täytä käyttäjän vaatimuksia. Se tapahtuu, kun yhtä tai useampaa käyttäjän tarpeesta johtuvaa määritystä ei ole toteutettu.

Epäonnistuminen: Kun mikä tahansa vika saavuttaa loppuasiakkaan, sitä kutsutaan viaksi. Se määritellään ohjelmistojärjestelmän tai -komponentin kyvyttömyyteen toimia niin kuin sen on tarkoitus, eli määriteltyjen vaatimusten puitteissa.

Johdatus virheeseen, vikaan ja epäonnistumiseen

img 617dd28eb28f8

Joku voi ymmärtää virheen, vian ja vian seuraavan esimerkin avulla:

Läsnäoloohjelmistoa luodessaan kehittäjä unohtaa lisätä puolen päivän toiminnallisuuden. Tämä on virhe tai virhe. Se johtaa virheeseen tai virheeseen ohjelmistossa, koska tämä toiminto on välttämätön. Nyt jos tämä sovellus kehitetään ja toimitetaan asiakkaalle, niin ohjelmisto merkitään poissaolevaksi, jos joku organisaatiossa vie puoli päivää. Siten järjestelmä ei tee sitä, mitä sen piti tehdä, ja tämä aiheuttaa vian.

Virhe

Erehtyminen on inhimillistä.

Virhe on inhimillinen virhe, joka johtuu kehittäjän virheestä, väärinkäsityksestä tai väärinkäsityksestä.

Yksittäinen virhe voi aiheuttaa sarjan vikoja ohjelmistossa.

Se voi johtua:

  • Kehittäjän looginen virhe aiheuttaa virheen.
  • Suunnitteluvirhe arkkitehdin tekemä.
  • Inhimilliset tavat, kuten letargia, viivyttely tai muut, aiheuttavat virheen.
  • Virheet voivat johtua asiakkaiden antamista virheellisistä tai riittämättömistä tiedoista.
  • Liiketoimintaanalyytikon virheellinen tulkinta vaatimuksista aiheuttaa virheen.
  • Vaatimusten virheviestintä analyytikon ja kehittäjän välillä johtaa virheisiin.

Virhetyypit

    Syntaktinen virhe:Kielioppi- tai oikeinkirjoitusvirheet lauseessa, jotka ovat hyvin ilmeisiä ohjelmiston graafista käyttöliittymää testattaessa, ovat syntaktisia virheitä.Virheenkäsittelyvirhe:Virheitä, jotka tapahtuvat, kun niitä ei käsitellä oikein, kutsutaan virheenkäsittelyvirheiksi. Kun käyttäjä on vuorovaikutuksessa järjestelmän kanssa, saattaa tapahtua virhe. Jos tätä ei käsitellä oikein, se johtaa sekaannukseen ja sitä kutsutaan virheenkäsittelyvirheiksi.Laitteistovirhe:Voi käydä niin, että ohjelmiston kanssa käytetty laitteistokomponentti ei ole yhteensopiva tai siltä puuttuu ajureita, jolloin tapahtuu laitteistovirheitä.Käyttöliittymävirhe:Kun käyttäjä on vuorovaikutuksessa järjestelmän kanssa, hän saattaa kohdata puuttuvia tai virheellisiä toimintavirheitä. Näitä kutsutaan käyttöliittymävirheiksi.Testausvirhe:Epäonnistuminen tarkoittaa tarkistusta tai virheestä ilmoittamista, joka ilmenee testin suorittamisen aikana, ja sitä kutsutaan testausvirheeksi.Laskuvirhe:Virheitä, jotka johtuvat vääristä kaavoista, tietotyyppien yhteensopimattomuudesta, virheellisestä logiikasta tai muista, kutsutaan laskentavirheiksi.Virtauksen ohjausvirhe:Kun ohjelma virtaa odottamattomaan suuntaan tai ohittaa ohjauksen väärään suuntaan, näitä virheitä kutsutaan vuonohjausvirheiksi. Nämä virheet johtavat äärettömät silmukat , ajonaikaiset syntaktiset virheet jne.

Virheiden syyt

Joitakin mahdollisia syitä siihen, miksi ohjelmistotuotteessa esiintyy virheitä, ovat:

    Inhimillinen virhe:Ihminen on ainoa älykkyys, johon voimme luottaa, ja he ovat alttiita virheille. Olemalla varovainen, osa virheistä voidaan välttää, mutta ei kaikkia.Kommunikaatiovirhe:Ohjelmistoa kehittävät ja testaavat useat ihmiset, mikä voi johtaa konflikteihin, jotka johtavat virheelliseen koordinaatioon ja huonoon viestintään. Väärintulkinta ja väärinkäsitys johtavat ohjelmistoon virheisiin, jotka olisi muuten vältetty.Järjestelmän sisäiset ja järjestelmien väliset rajapinnat:Virheiden mahdollisuus järjestelmien välisessä ja järjestelmän sisäisessä rajapinnan muodostuksessa on erittäin korkea.
      Järjestelmän sisäinen käyttöliittymä -Eri moduulien ja ominaisuuksien integrointi järjestelmän tai sovelluksen sisällä johtaa järjestelmän sisäisiin rajapintavirheisiin.Järjestelmien välinen käyttöliittymä -Kahden eri sovelluksen yhteensopivuus yhdessä työskentelyn aikana voi johtaa järjestelmien välisiin rajapintavirheisiin.
    Ympäristö:Tulvat, tulipalot, maanjäristykset, tsunamit, salamat ja muut vaikuttavat tietokonejärjestelmään ja johtavat virheisiin.Paine:Työskentely rajoitetuilla tai riittämättömillä resursseilla ja epärealistisissa määräajoissa johtaa siihen, että kehittäjillä on vähemmän aikaa testata koodia itse ennen sen luovuttamista testaustiimille.Kokemattomuus:Projektissa tehtävät tulee jakaa tiimin jäsenen kokemuksen tai taitojen mukaan. Jos tätä ei noudateta, se voi johtaa virheisiin, koska kokemattomilla tai riittämättömästi taitavilla jäsenillä ei ole asianmukaista tietoa tehtävästä.Monimutkaisuus:Erittäin monimutkaiset koodit, suunnitelmat, arkkitehtuuri tai tekniikka voivat tasoittaa tietä kriittisille virheille, sillä ihmismieli voi olla vain tietyn monimutkaisuuden taso.Tuntematon tekniikka:Kehittäjät ja testaajat, jotka eivät pysy ajan tasalla viimeaikaisesta teknologisesta kehityksestä, kohtaavat ongelman projekteissa, jotka perustuvat heidän tietoalueensa ulkopuolisiin teknologioihin ja aiheuttavat siten virheen.

Virhe vs vika vs epäonnistuminen

Virhe Vika Epäonnistuminen
Se on virhe.Virhe aiheuttaa vian.Vika johtaa epäonnistumiseen.
Ihmisen toiminta tuottaa odottamattomia tuloksia.Tuotteessa tai ohjelmistossa on tietty puute, jonka vuoksi se ei täytä vaadittuja määrityksiä.Komponentti tai järjestelmä ei suorita vaadittuja toimintoja ennalta määritettyjen ehtojen mukaisesti.
Kaikki virheet eivät johda virheisiin. Esimerkiksi yksinkertaista kielioppivirhettä ei pidetä puutteena.Kaikki viat eivät johda epäonnistumiseen. Esimerkiksi tietty toiminto saattaa vaatia tiettyjä ennakkoehtoja, mutta ne eivät ole välttämättömiä eivätkä siten aiheuta vikaa.Kaikki epäonnistumiset eivät ole kriittisiä. Esimerkiksi asiakkaan on ehkä parannettava järjestelmän versiota ohjelmistoa käyttäessään, koska asiakkaan versio on vanhentunut.

Viimeiset sanat

Yhden poikkeaman ilmaantuminen tai esiintyminen johtaa muihin ongelmiin, ja siten se kaikki liittyy toisiinsa.

Virheet johtuvat inhimillisistä virheistä, jotka johtavat poikkeamiseen vaatimuksista ja aiheuttavat puutteita.

Vika voi olla kriittinen tai ei, joten se ei välttämättä tarkoita virhettä koodissa.

Se voi olla myös vaatimuksissa määritelty toteuttamaton toiminto.

Tarkista siis huolellisesti, ennen kuin teet sen johtopäätöksen, että koodi on virheellinen.

Vikaraportti

Vikaraportti tai virheraportti on dokumentti, joka tunnistaa ja kuvaa testaajan havaitseman vian. Vikaraporttia voidaan käyttää samantyyppisten vikojen tunnistamiseen tulevaisuudessa niiden välttämiseksi.

Määritä ohjelmistotestauksen vika

Virhe tai vika on seuraus tai seuraus koodausvirheestä, joka ei täytä todellisia vaatimuksia.

Kun testaajat suorittavat testitapausten testaamista, sovelluskohdan vaihtelu tai poikkeama loppukäyttäjän vaatimuksista, joka aiheuttaa virheellisiä tai odottamattomia tuloksia, on vika.

Ongelmia, bugeja, ongelmia tai tapauksia kutsutaan yleisesti ohjelmistotestausvirheiden nimiksi.

Määritä vikaraportti

Vikaraportiksi kutsutaan dokumentaatiota, joka määrittää vian esiintymisen, tilan ja luonteen läpinäkyvästi, jotta kehittäjät voivat helposti kopioida ja korjata sen.

Asiakirja sisältää tietoja viasta, kuten sen kuvauksen, sen löytäneen testaajan nimen, virheen havaitsemispäivämäärän, sen korjaaneen kehittäjän ja paljon muuta.

Malli vikailmoitukselle

Vikaraporttien malli voi vaihdella työkalusta toiseen. Yleinen vikaraporttimalli on kuitenkin seuraava:

ID Automaattinen tai manuaalinen yksilöllinen tunniste vian tunnistamiseksi
Projekti Projektin nimi
Tuote Tuotteen nimi
Julkaisuversio Tuotteen julkaisuversio
Moduuli Moduuli, jossa vika havaittiin.
Havaittu versioversio Tuotteen versio, jossa vika havaittiin.
Yhteenveto Selkeä ja ytimekäs yhteenveto löydetystä viasta.
Kuvaus Yksinkertainen ja kattava kuvaus viasta. Älä käytä mitään toistuvasti tai käytä monimutkaisia ​​sanoja.
Toistamisen vaiheet Vaiheittainen kuvaus vikojen toistoon useilla vaiheilla.
Todelliset tulokset Todelliset tulokset saatiin vaiheiden noudattamisen jälkeen.
odotetut tulokset Nämä tulokset odotettiin saatavan vaiheiden noudattamisen jälkeen.
Liitteet Lisätietoja, kuten kuvakaappauksia ja lokeja.
Huomautukset Lisäkommentteja viasta.
Vian todennäköisyys Vian todennäköisyys.
Vian vakavuus Vian vakavuus.
Ilmoittanut Viasta ilmoittaneen henkilön nimi.
Määritetty Sen henkilön nimi, jolle vika on annettu analysoitavaksi tai korjattavaksi.
Tila Vian tila
Kiinteä versio Rakenna versio tuotteesta vian korjaamisen jälkeen.

Vianhallintaprosessi

Järjestelmällistä prosessia virheiden tunnistamiseksi ja korjaamiseksi kutsutaan vianhallintaprosessiksi.

Vianhallintasyklissä on seuraavat kuusi vaihetta:

  • Löytö – viasta
  • Luokittelu – viasta
  • Vian korjaaminen/ratkaisu – kehittäjät
  • Varmentaminen – testaajien toimesta
  • Sulkeminen – viasta
  • Vikaraportti
img 617dd28f1461c

1. Löytö

Tässä vaiheessa testaajat selvittävät mahdollisimman monta vikaa ennen kuin loppukäyttäjä havaitsee ne.

Kun kehittäjät ovat tunnustaneet ja hyväksyneet puutteen, sitä voidaan kutsua löydetyksi.

2. Luokittelu

Luokittelu tarkoittaa erilaisten vikojen jakamista niiden tärkeysjärjestyksen mukaan, jotta kehittäjät voivat korjata ne vastaavasti.

Luokkia on neljä:

    Kriittinen:Nämä viat vaativat välitöntä korjausta, koska ne voivat vahingoittaa tuotetta merkittävästi, jos niitä ei korjata.Korkea:Nämä viat vaikuttavat tuotteen pääominaisuuksiin.Keskikokoinen:Nämä viat aiheuttavat minimaalisen poikkeaman ohjelmistovaatimuksista.Matala:Näillä vioilla on vähäinen vaikutus tuotteen toimintaan.

3. Resoluutio

Ohjelmistotestauksessa vikojen korjaaminen tai vianselvitys on yleensä nelivaiheinen prosessi, joka auttaa korjaamaan ja jäljittämään vikoja helposti.

Alkaen virheiden osoittamisesta kehittäjille, jota seuraa viankorjausaikataulu, jonka jälkeen viat korjataan, prosessi päättyy, kun ratkaisuraportti lähetetään testipäällikölle.

    Tehtävä:Korjattava vika määritetään kehittäjälle, ja sen tilaksi muutetaan Responding.Aikataulun korjaus:Vian prioriteetin mukaan kehittäjät luovat aikataulun vikojen korjaamiseksi.Vian korjaaminen:Testipäällikkö vertaa kehitystiimin viankorjausmenettelyä heidän aikatauluinsa.Resoluutio:Kehittäjien vikaraportti lähetetään testipäällikölle, kun viat on korjattu.

4. Vahvistus

Testausryhmä tarkistaa, ovatko kehitysryhmän korjaamat viat korjattu vai eivät.

5. Sulkeminen

Onnistuneen korjaamisen ja vian tarkistamisen jälkeen vian tilaksi muutetaan suljettu. Jos näin ei tapahdu, testaajat tarkistavat vian uudelleen.

6. Raportointi

Johtokunnan tulee ymmärtää vianhallintaprosessi ja sillä on oltava oikeus tietää vikatila.

Testauspäällikkö laatii vikaraportin ja lähettää sen palautetta varten johtoryhmälle. Johtoryhmä tarkistaa vianhallintaprosessin ja lähettää tarvittaessa palautetta tai tukea.

Vioista ilmoittaminen parantaa viestintää ja vikojen seurantaa.

Vianhallintaprosessin tarve

Konkreettisen vianhallintaprosessin vaatimus voidaan ymmärtää paremmin seuraavan esimerkin avulla:

Oletetaan, että Task Manager -sovellusta testataan.

Testauksen aikana testausryhmä löysi joitakin bugeja, esimerkiksi 80, ja niistä ilmoitettiin testipäällikölle.

Testipäällikkö ilmoittaa vioista kehitystiimille, jotka vastaavat viikon kuluttua 70 vian korjauksella.

Testauspäällikkö lähettää nämä tiedot testaustiimille.

Testausryhmä vastasi viikkoa myöhemmin ja ilmoitti, että 70 vikaa oli korjattu, mutta 20 uutta ilmeni.

Nyt tämä koko prosessi voi olla hieman monimutkainen vain sanallisen viestinnän vuoksi. Vikojen jäljittäminen ja korjaaminen tulee olemaan vaikeaa.

Siksi tarvitaan vianhallintaprosessi.

Tehokas vikailmoitus

Vikailmoitukset on luotava tehokkaasti.

Tämä auttaa säästämään aikaa ja turhaa vaivaa yritettäessä ymmärtää ja toistaa vika.

Seuraavia toimenpiteitä voidaan noudattaa hyödyllisten vikaraporttien varmistamiseksi:

1. Pelaa:

Kun vika on paljastettu, toista se vielä kerran varmuuden vuoksi. Jos replikointi ei ole mahdollista, muista tarkat testiolosuhteet, jotka johtivat virheeseen, ja yritä uudelleen. Jos vika ei kuitenkaan vieläkään toistu, lähetä yksityiskohtaiset vikaraportit ja kaikki koetulokset lisätutkimuksia varten.

2. Ole täsmällinen:

Jokaisen vikaraportin toimenpiteen tulee olla erityinen.

Esimerkiksi sen sijaan, että sanoisi Kirjaudu sisään, siellä pitäisi olla (1) Siirry kotisivulle, (2) Napsauta kirjautumispainiketta, (3) Anna käyttäjätunnus ja salasana ja (4) napsauta Kirjaudu.

Jos esimerkiksi polkuja on useita, mainitse tarkka polku, jota seurattiin ja johda virheeseen.

Vältä käyttämästä epämääräisiä pronomineja, kuten se, ja määritä, mitä se tarkoittaa.

3. Tavoite:

Sen sijaan, että käyttäisit subjektiivisia lausuntoja, kuten surkea sovellus, vältä tunteita ja sano objektiivisesti Kyllä tai Ei tai Hyväksytty tai Hylätty.

4. Tarkista:

Kirjoittamisen jälkeen lähetä se vasta tarkastettuasi ja poistanut kirjoitusvirheet.

5. Yksityiskohtiin suuntautunut:

Anna tiedot yksityiskohtaisesti. Kehittäjät eivät saa joutua tiedon puutteesta.

Vikamittarit

Vikamittareita käytetään mittaamaan testin suorittamisen laatua. On kaksi parametria:

Vian hylkäyssuhde (DRR) = (hylättyjen vikojen määrä / havaittujen vikojen kokonaismäärä) * 100

Vian vuotosuhde (DLR) = (puuttuneiden vikojen määrä / ohjelmiston vikojen kokonaismäärä) * 100

Jos DRR- ja DLR-arvot ovat pieniä, testin suorittamisen laatu on parempi. Testinhallinta määrittää näiden arvojen hyväksytyt alueet.

Näitä suhteita voidaan pienentää

Tiimin jäsenten testaustaitojen parantaminen.

Käytä enemmän aikaa testin suorittamiseen ja tulosten tarkistamiseen.

Oletetaan esimerkiksi, että Task Manager -projektissa on 80 vikaa, mutta testausryhmä pystyi tunnistamaan vain 60. Näistä kehitystiimi hylkäsi 10 vikaa. Siten 20 vikaa puuttui.

Joten DRR-suhde on:

(10/60) * 100 = 16,66 %

Ja DLR-suhde tulee olemaan:

(20/80) * 100 = 25 %

Vika FAQ

Mikä on vikaesimerkki?

Esimerkki ohjelmistovirheestä voi olla käyttöliittymän kielioppivirhe tai ohjelman koodausvirheet.

Mikä toinen sana on vialle?

Ohjelmistotestauksessa vikaa voidaan kutsua bugiksi, virheeksi, viaksi ja moneksi muuksi.

Mikä on viankorjaus?

Vian sanotaan korjatuksi, kun sen tila on merkitty suljetuksi. Vian tila vaihtuu suljetuksi, kun se joko varmistetaan riittävästi tai se säilytetään korjausta varten myöhemmissä julkaisuissa.

Mikä on vian elinkaari?

Vian elinkaari eli vian elinkaari on matka vian tunnistamisesta korjaamiseen. Vika muuttuu elinkaarensa aikana tunnistetusta määritetystä aktiiviseksi testattavaksi, varmennettavaksi ja suljettavaksi. Vika voi myös mennä hylättyyn tai lykättyyn tilaan tai uudelleen avattuun tilaan. Nämä tilat vaihtelevat organisaatioittain testaukseen käytetyn työkalun mukaan.

Miten hallitset vikoja?

Vikoja voidaan vähentää seuraavilla tavoilla:
1. Vikaanalyysin tehokas suorittaminen
2. Ohjelmistovaatimusten perusteellinen analysointi
3. Virheenvalvontaohjelmiston käyttö
4. Aggressiivinen regressiotestaus
5. Toistuva koodin uudelleenmuodostus.