Valtava ohjelmistotalo, kuten Google, menestyy huolimatta alhaisista prioriteeteista ohjelmistossaan, mutta pienemmillä yrityksillä ja yrityksillä ei ole ylellisyyttä.
Asiakkaat odottavat tuotteilta, mitä he vaativat myynnin sivulla tai dokumentaatiossa. Niin monia vaihtoehtoja siellä, he eivät ajattele kahdesti hyppäämisestä, jos tuote hukkaa aikaa ja rahaa. Siksi ohjelmisto läpäisee testit ennen testituloksia, jotta:
korosta eroja alkuperäisen konseptin ja lopputuloksen välillä
varmista, että ohjelmisto toimii suunnitelmien suunnittelijana
vahvista lopputuotteen - tuotteen on täytettävä asiakkaan vaatimukset
arvioida ominaisuuksia ja laatua
Testaus noudattaa tiukkaa suunnitelmaa. Tämä optimoi arvokkaiden resurssien, taitojen, ajan ja rahan käytön tarjoamalla sidosryhmille olennaisia tietoja tuotteiden viemiseksi eteenpäin. Tavoitteena on helpottaa hyvää loppukäyttäjien kokemusta vahvan laadunvarmistusohjelman kautta. Kun panokset ovat niin korkeat, QA: n johtajat ovat osa huipputason ammattilaisia. Testaus noudattaa yleensä näitä vaiheita:
Vaatimusanalyysi, jossa johtajat esittelevät suunnitelman sopivan testistrategian toteuttamiseksi.
Testit alkavat ja tulokset analysoidaan.
Kaikki vikat korjataan, ja ohjelmisto menee läpi regressiotestauksen - järjestelmä tarkistaa ohjelma toimii edelleen muutosten jälkeen.
Testiestejä koskeva raportti kertoo sitten koko prosessin ja tulosten.
Ohjelmistotestausmenetelmät
Tässä on erilaisia menetelmiä, joilla arvioidaan tuotteen käyttäytymistä ja suorituskykyä.
Musta laatikko ja valkoinen laatikko testaus ovat kaksi perusmenetelmää.
- Musta laatikon testaus - Tätä kutsutaan myös toiminnalliseksi tai määrittelypohjaiseksi testaukseksi, tämä menetelmä keskittyy tuotokseen. Testaajat eivät ole kiinnostuneita sisäisistä mekanismeista. He vain tarkistavat ohjelmiston, mitä sen pitäisi. Koodausta ei tarvita, ja testaajat työskentelevät käyttöliittymätasolla.
- Valkoinen laatikon testaus - Tämä menetelmä käyttää koodausosaamista osana testimenettelyä. Kun tuote epäonnistuu, testaajat käyvät syvälle koodiin tarpeen selvittääkseen syyn. Ohjelmistokehittäjät tekevät tämän itse, koska he määrittävät tuotteen toimivan. Rakennepohjainen ja lasirasitustestaus ovat tämän menetelmän muita nimiä.
- Staattinen testaus - Testaajat tarkastavat ohjelmiston koodin ja dokumentaation mutta eivät suorita ohjelmaa. Staattiset testit alkavat tuotekehityksen varhaisessa vaiheessa tarkastusprosessin aikana.
- Dynaaminen testaus - Ohjelmisto suoritetaan eri tuloilla ja testaajat vertaavat lähdöt, joiden odotetaan toimivan tällä menetelmällä.
- GUI-testaus - Tämä testaa käyttöliittymän ominaisuudet - tekstin muotoilu, tekstiruudut, painikkeet, luettelot, asettelu, värit, fontit, fonttikoot jne. GUI-testaus on aikaa vievää, ja kolmannet osapuolet ottavat usein tehtävän kehittäjien sijaan.
Testitasot
Nämä ovat välttämättömiä tunnistamaan heikkouden ja päällekkäisyyksien alueet ohjelmistokehityksen elinkaaren jokaisessa vaiheessa.
- Yksikkötestaus - Kehittäjät testaavat koodin, käyttöliittymien ja toimintojen / menettelyjen perusperiaatteet. He tietävät, miten heidän koodinsa pitäisi vastata ja tehdä muutoksia tuotoksen mukaan.
- Osien testaus - Muut nimet ovat moduuli- tai ohjelmatestaus. Se on samanlainen kuin yksikkötestaus, mutta siinä on korkeampi integrointitaso. Ohjelmiston moduulit testataan vikoilla niiden yksittäisen toiminnon tarkistamiseksi.
- Integrointitestaus - Tämä tunnistaa virheet, kun moduulit on integroitu. Erilaiset integraatiotestit ovat alhaalta ylöspäin, ylhäältä alas ja toiminnallisina inkrementaalisina.
- Järjestelmätestaus - Projektin komponentit testataan kokonaisuudessaan eri ympäristöissä tällä menetelmällä. Se kuuluu mustan laatikon menetelmän alle ja on yksi lopullisista testeistä prosessissa. Se määrittää, toimiiko järjestelmä niin, että sen pitäisi vastata yritysten ja käyttäjien tarpeisiin.
- Alfa-testaus - Sisäinen henkilökunta testaa ohjelmiston kehittäjän sivustossa simuloituun tai todelliseen ympäristöön. Tämän jälkeen kehittäjät korjaavat vikoja ja muita asioita.
- Beta-testaus - Tunnetaan myös kenttätestaukseksi, asiakas testaa tuotteen omalla sivustollaan reaalisissa olosuhteissa. Asiakas voi tarjota ryhmälle loppukäyttäjiä mahdollisuuden testata ohjelmistoa etukäteen tai beta-versiolla. Palautetta mahdollisista parannuksista lähetetään sitten kehittäjälle.
- Hyväksymistestaus - Myös mustan laatikon testauksen puitteissa asiakas testaa ohjelmiston selvittääkseen, onko kehittäjä luonut ohjelman haluamiin eritelmiin.
Testityypit
Nämä ohjelmistokokeet keskittyvät erityisiin tavoitteisiin.
- Asennustestaus - Ohjelmiston testausinsinööri ja konfigurointipäällikkö testaavat tämän testin varmistaakseen, että loppukäyttäjä voi asentaa ja suorittaa ohjelman. Se kattaa alueet, kuten asennustiedostot, asennuspaikat ja järjestelmänvalvojan oikeudet.
- Kehitystestaus - Tämä toteuttaa useita synkronoituja strategioita vian havaitsemiseksi ja ehkäisemiseksi. Se sisältää staattisen koodin analysoinnin, vertaisarviointien, jäljitettävyyden ja metrijärjestelmän analyysin. Tavoitteena on vähentää riskejä ja säästää kustannuksia.
- Käytettävyystestaus - Käyttäjäkokemus on tämän testin alla. Se mittaa graafisen käyttöliittymän suunnittelun ja helppokäyttöisyyden. Testi tarkistaa testien aiheiden tarkkuutta ja tehokkuutta sekä emotionaalisia reaktioita.
- Terveyden testaus - Tämä osoittaa, onko ohjelmisto kallista aikaa ja kustannuksia jatkaa lisätestejä. Liian monta puutetta ja aggressiivisempia testejä ei seuraa.
- Savun testaus - Savun testaus paljastaa perusongelmat, jotka ovat riittävän vakavia estääkseen vapautumisen. Kun tämä tehdään uudella rakennelmalla, sitä kutsutaan rakennustarkistustestiksi.
- Regressiotestaus - Kun järjestelmässä tehdään muutoksia, regressiotestaus seuraa odottamatonta käyttäytymistä. Se viittaa haittavaikutuksiin moduuleihin tai komponentteihin.
- Rikkoutuva testaus - Testaajat syöttävät epänormaaleja merkintöjä ja havaitsevat ohjelmiston kyvyn hallita odottamattomia tuloja. Tämä osoittaa kehittäjille, kuinka vahva ohjelma on virheenhallinnassa.
- Palautustestit - Kun laitteisto tai muut toiminnot epäonnistuvat, tämä testi osoittaa, kuinka hyvin ohjelmisto voi toipua ja jatkaa toimintaa.
- Automaattinen testaus - Tämä suorittaa tehtävät, joita on vaikea toteuttaa manuaalisesti. Se käyttää erityisiä ohjelmistoja testien suorittamiseen ja tietojen toimittamiseen todellisista odotetuista tuloksista.
- Yhteensopivuustestaus - Ohjelmiston on käytettävä eri tietojenkäsittelyympäristöissä, joten se tarkistaa yhteensopivuuden eri järjestelmien kanssa. Esimerkiksi ohjelmisto toimii eri käyttöjärjestelmien ja verkkoselainten kanssa?
- Suorituskyvyn testaus - Tämä on syvällinen testi, joka tutkii ohjelmiston suorituskykyä eri skenaarioissa. Tietoa reagoinnista, vakaudesta, resurssien jakamisesta ja nopeudesta kerätään. Lisäksi osa-testi, kuten tilavuus, kapasiteetti ja piikitestaus, ovat tässä prosessissa mukana.
- Turvallisuustestaus - Tämä mittaa ohjelmiston kykyä suojella käyttäjien turvallisuutta. Tämä tarkoittaa valtuutustoimintoja, todentamista, luottamuksellisuutta, eheyttä, saatavuutta ja hylkäämistä.
- Esteettömyystestaus - Tämä ei ole sama kuin käytettävyystesti. Tämä määrittää, missä määrin käyttäjät, joilla on erilaiset kyvyt - oppiminen ja fyysiset vammaiset - voivat käyttää ohjelmistoa.
- Kansainvälistymis- ja lokalisointitestit - Tulokset osoittavat, miten ohjelmisto voi sopeutua eri kieliin ja alueellisiin vaatimuksiin. Tämä sisältää lisäosien lisäämisen tiettyihin paikkoihin ja tekstin kääntämisen.
Ohjelmistotestaus on olennainen osa tuotteen saattamista markkinoille. Ja ilman testaajia, laaja valikoima saatavilla olevia ohjelmistoja ei olisi olemassa. Ryhdy sertifioitujen ohjelmistojen testaajiksi organisaatioiden, kuten BCS: n, Chartered Institute for IT: n, ISTQB®: n (International Software Testing Qualifications Board) ja ASQ: n (aiemmin American Society for Quality) kautta.