Mikä on automaatiotestaus? - Testiprosessi ja sen tyypit

Kokeile Instrumenttia Ongelmien Poistamiseksi





Ohjelmistoista tulee arvokkaampia ja tärkeämpiä, kun toivotamme uudet sovellukset ja laitteet koteihimme ja yrityksiimme johtamaan tärkeätä tehtävää. 16. huhtikuutath, 1994, lentokoneen kuolemaan johtanut kone kaatui, juuri ennen laskeutumista lentokentälle. Missä 250 ihmistä kuoli, mikä oli Kiinan lentoyhtiöiden tappavin onnettomuus. Tapahtuman pääasiallinen syy johtui ohjelmistovirheistä. Ohjelmiston käyttäjiä ei testattu ennen sen käyttöönottoa. Jokaisessa järjestelmässä on ohjelmavirheitä. Ohjelmistojärjestelmän suunnittelu on mahdotonta ilman virheitä. Mutta järjestelmän vikojen aiheuttama vika voidaan suojata suorittamalla ohjelmistotestaus. Ohjelmistojen testaus on prosessi, jota käytetään kehittyneiden tietokoneohjelmistojen virheiden, täydellisyyden ja laadun löytämiseen. Se sisältää joukon toimintoja, joiden tarkoituksena on löytää virheitä ohjelmistoista, jotta ne voidaan korjata ennen tuotteen luovuttamista loppukäyttäjille. Testausmenetelmiä on kahta tyyppiä: manuaalinen testaus ja automaatio testaus.

Mikä on automaatiotestaus?

Automaattinen testaus käyttää työkaluja, komentosarjoja ja ohjelmistoja testitapausten suorittamiseen toistamalla ennalta määritettyjä toimintoja. Se riippuu täysin esikoodatusta testistä, jossa verrataan odotettua tulosta todelliseen, kun esikomentosarja suoritetaan. Testit, kuten kuormitus, rasitus, piikki, voidaan testata automaatiotyökaluilla. Esimerkki: Facebook testaa aivojen ja tietokoneiden käyttöliittymää, joka voi kääntää ajatuksia digitaalisiksi teksteiksi.




Mitkä testitapaukset tulisi automatisoida ensin?

Seuraavat ovat testitapauksia, jotka on ensin automatisoitava,

  • Toistuva tehtävä - Esimerkki verkkokauppasivustosta, joka testaa kirjautumistiedot useita kertoja varmistaakseen, että kirjautumissivu toimii käyttäjän vaatimusten mukaisesti.
  • Tulosten kaappaaminen ja jakaminen - Numeroiden murskaamisen ja graafien sijoittamisen sijaan työkaluihin tai automaatiostrategiaan voi olla hyötyä, jolloin aikaa voidaan säästää.
  • Tiedonsyöttötesti - Tietojen automatisointi tietolähteeseen, jotta ne ovat helposti luettavissa. Missä voidaan paremmin käsitellä tietojen vaihtelua. Silloin kun halutaan etsiä tiettyjä tietoja tuhansista tiedoista, automaatiotyökalua voidaan käyttää etsimään tiettyjä tietoja.
  • Ajoitus tai seulontavaste - Ei tarvitse seurata näyttöä manuaalisesti, sitä voidaan parantaa käyttämällä automaattista koodia 'odota'.
  • Ei-toiminnallinen testaus - Esimerkki ei-toiminnallisen testaustyypin automatisoinnista on kuormitustestauksen automatisointi. Jos meillä on kymmenentuhatta kuormaa manuaalisen testaamisen sijaan, on parempi vaihtoehto käyttää automaatiotestausta.

Automaation testausprosessi

Automaatiotestissä käytetty vaiheittainen menettely on



automaatio - testi - prosessi

automaatio-testi-prosessi

1). Testityökalun valinta

Oikean työkalun valinta testin luonteen perusteella on erittäin tärkeää, että automaatio onnistuu. Koodipohjaista testausta varten prosessoi tai graafinen käyttöliittymä -testaukseen perustuvat oikeat työkalut on valittava vastaavasti.


2). Määritä automaation laajuus

Automaation laajuudella on perusrooli. Esimerkiksi minkä tahansa yrityksen tärkeitä ominaisuuksia ovat skenaariot, joissa on paljon dataa, joilla on yhteiset toiminnot eri alustoilla ja sovelluksissa, ja testitapausten monimutkaisuus. Jne.

3). Suunnittelun suunnittelu ja kehitys

Kun on määritetty tavoite ja minkä tyyppinen testaus automatisoitava, on päätettävä, mikä automaattinen testi suoritetaan. Kehitä ensin testitapaukset pienemmiksi loogisiksi testeiksi, kirjoita sitten testiskriptejä ja kehitä testipaketteja, joissa ne ajetaan yksi toisensa jälkeen automaattisesti. Tämä syntyy luomalla testi puvussa, kuten kirjastossa, jossa on useita testitapauksia.

4). Testin suorittaminen

Testikoodin suorittamiseen käytetään automaatiotyökalua tai testinhallintatyökalua. Lopullisen suorituksen jälkeen yksittäisistä testeistä on tehtävä yksityiskohtainen raportti. Jotta raporttia voidaan käyttää viitteenä muissa testeissä.

5). Huolto

Automaatio-komentosarjat on lisättävä, tarkistettava ja ylläpidettävä jokaiselle jaksolle. Jos huolto on tarpeen. Esimerkiksi koodin kirjoittamisen jälkeen tarkistamme koodin ja jos ilmenee virheitä, tapahtuu virhe. Siksi tunnistamme, missä koodin osassa on virhe, korjaamme sen ja suoritamme koodin heti alusta alkaen. Kunnossapidolla on siis tärkeä rooli, joka parantaa automaatioskriptien tarvetta.

Lähestymistavat automaatioon

Automaatiota on kolme, ne ovat

1). Koodiin perustuva lähestymistapa

Se testaa kehystyötä, keskittyy testitapausten suorittamiseen selvittääkseen, toimivatko eri koodiosastot odotusten mukaisesti eri olosuhteissa vai eivät. Se on suosittu menetelmä, jota käytetään ketterässä ohjelmistokehityksessä.

2). Graafinen käyttöliittymä (GUI)

GUI-sovelluksia käyttäviä sovelluksia voidaan testata tällä menetelmällä käyttäjän toimien ja vastausten tallentamiseksi niin monta kertaa. Esimerkki: Seleenityökalu, jota käytetään verkkosivuston testaamiseen. Testitapaukset voidaan kirjoittaa millä tahansa komentosarjakielellä, kuten java, phyton, C. jne.

3). Puitteiden lähestymistapa

Se on joukko ohjeita. Missä kehys yhdistää toiminnon kirjastot, testitietolähteet, objektitiedot ja muut uudelleenkäytettävät moduulit. Ylläpitokustannukset ovat pienemmät ja erittäin tehokkaat. Esimerkki: Jos testitapauksessa tapahtuu muutoksia, testitapaustiedoston kyseinen osa on päivitettävä muuttamatta ohjainta tai käynnistysskriptejä.

Kehystyypit

Kehystapoja on erilaisia

  • Lineaarinen komentosarjakehys
  • Datapohjainen kehystyö
  • Avainsanavetoinen kehystyö
  • Modulaarinen testauskehys
  • Hybridi-testauskehys.

Automaatiotestien tyypit

Erilaiset automaatiotestit ovat

  1. Yksikkötestaus
  2. Savutestaus
  3. Toiminnallinen testaus
  4. Integraation testaus
  5. Regressiotestaus

1). Yksikkötestaus

Verkkosovelluksessa voi olla useita testattavia komponentteja / malleja. Jokaisen mallin testausprosessi on yksikkötestaus. Se tehdään kehitysvaiheessa. Missä koodit kirjoittavat kehittäjät ja testaajat.

2). Savun testaus

Savutestaus tunnetaan vaihtoehtoisesti nimellä 'Koontiversiotestaus'. Sitä käytetään tarkistamaan, onko koodi kirjoitettu lopputulosten odotusten mukaista vai ei. Savutesteissä testin päätyttyä lopputuloksesta päätetään, jatketaanko tulevaa testiä vai ei. Testauksen aikana ilmenevät ongelmat voidaan tunnistaa jo varhaisessa vaiheessa.

3). Toiminnallinen testaus

Se tarkistaa verkon toimivuuden toimien vastaavasti tai ei. Esimerkiksi jos tarkastellaan kirjautumissivua, jossa meidän on annettava käyttäjätunnus ja salasana. Odotettu sivu ei avaudu, ellei syötetä oikeita tietoja. Jos koodi kirjoitetaan kirjautumissivulle ja testataan oikein, odotettu sivu avautuu, se tarkoittaa, että toimintatesti toimii oikein.

4). Integraation testaus

Tässä yksittäiset komponentit integroidaan ja testataan kerralla. Mistä voimme tarkistaa, ovatko yksittäiset moduulit yhteensopivia viestinnän kanssa. Esimerkiksi, jos tarkastellaan kuulakynän valmistusta, jossa kynä koostuu erikseen valmistetusta ja kootusta täytteestä, korkista, rungosta. Kokoonpanon aikana tarkistamme ne, ovatko ne kunnolla vai ei.

5). Regressiotestaus

Kun koodissa on päivityksiä, varmistamme, että se ei vaikuta jo kirjoitettuihin koodeihin. Siksi teemme regressiotestausta. Regressiotestauksen käyttö on koodin päivittäminen vaatimuksen perusteella, virheen havaitseminen ja korjaaminen. Esimerkki regressiotestauksesta on pankkisivusto, jossa verkkosivustoa päivitetään säännöllisesti tarvittaessa, kuten vaihtotilin saldo. Siksi verkkosivustoa päivitettäessä on varmistettava, että uudet päivitetyt ominaisuudet eivät vaikuta jo olemassa oleviin ominaisuuksiin.

Kuinka valita automaatiotyökalut?

Valitse sopiva automaatiotyökalu tarkistamalla seuraavat alla luetellut ominaisuudet:

  • Ympäristötuki
  • Tietokannan testaus
  • Kohteen tunnistaminen
  • Kuvan testaus
  • Virheen palautustestaus
  • Useita kehystyötukia
  • Pienennä kustannuksia
  • Laajat testiraportit ja kustannukset.

Automaatiotestaustyökalujen tyypit

Automaatiotestaustyökaluja on monia, harvat niistä on lueteltu alla

1). Seleeni

Se on avoimen lähdekoodin, joka on suosittu testausmenetelmä verkkosovellusten, useiden selainten ja alustojen suorittamiseen. Seleenin uusin versio on Selenium4. Ohjelmoija vaatii etukäteen ohjelmointikielitaitoa. Seleniumissa on neljä komponenttia, seleeni IDE, seleenikaukosäädin, verkko-ohjain, seleeniristikko.

2). vettä

Se on avoimen lähdekoodin testaustyökalu, joka koostuu rubiinikirjastosta, joka automatisoi verkkosovellusten testauksen. Viimeisin versio watirista on watir 6.16. Koodit voidaan kirjoittaa millä tahansa kielellä. Firefox, kromi, safari ovat tiettyjä selaimia, joita watir tukee. Jotkut watirin ominaisuuksista ovat, se vie näytön shortsit, sivun suorituskyvyn ja voi ladata minkä tahansa tiedoston helposti.

3). Ranorex

Se on joustava kaikki yhdessä GUI-testaustyökalussa. Se sopii kaikille ympäristöselaimille ja laitteille. Se tukee C # ja V.NET. Se on sisäänrakennettu Microsoft Windows ja Windows-palvelimelle. Ranorexin pääkomponentit ovat ranorex-tallennin, ranorex-arkisto, ranorex-vakooja, ranorex-koodieditori ja ranorex-virheenkorjaus.

4). API (sovellusohjelmointirajapinnan testaus)

Se on mobiili testaustyökalu, joka on avoimen lähdekoodin sovellusohjelmisto. API etsii, antaako suoritettu API-testi tarkkoja tuloksia vai ei. API-testauksia on erilaisia, yksikötestaus, toiminnallinen testaus, kuormitustestaus, ajonaikaisen virheen havaitseminen, tietoturvatestaus, verkkokäyttöliittymän testaus, tunkeutumistestaus, sumutestaus. Se on toteutettu POSIX-sovellusliittymässä.

Automaation testaustyökalut mobiilisovelluksille

Erilaisia ​​mobiilisovellusten automaatiotestaustyökaluja ovat Appium, Robotium, MonkeyRunner, UI Automator, Selendroid, MonkeyTalk, Testdroid, Calabash, Frank, SeeTest

1). appium

  • Se on avoimen lähdekoodin
  • Tukee Java, Ruby ja muita
  • Lähdekoodia voidaan käyttää uudelleen
  • Yhteensopiva Android- ja Ios-laitteiden kanssa.

2). robotteja

  • Se on avoimen lähdekoodin
  • Yhteensopiva kaikkien Android-versioiden ja aliversioiden kanssa.
  • Koodit kirjoitetaan Java-kielellä.

3). Monkeyrunner

  • Kehyksen tai toiminnallisen tason testaus tehdään monkeyrunnerilla
  • Koodit kirjoitetaan pythonilla
  • Ominaisuudet: se ohjaa useita laitteita kerrallaan, automaatio voi olla laajennettavissa, Android-sovellukset ja laitteistot voidaan testata, automaatio voi olla laajennettavissa.

4). UI Automator

  • Sitä käytetään käyttöliittymien testaamiseen käyttöliittymän testaustapauksia käyttäen.
  • Tukee androidien eri versioita
  • Se voi lukita ja avata älypuhelimet

5). Selendroid

  • Sitä käytetään android-pohjaisen hybridin käyttöliittymän testaamiseen.
  • Testitapaukset kirjoitetaan selendroidilla
  • TO protokolla kuten JSON-lanka on erittäin yhteensopiva.

Automaatiotestaukseen liittyvä riski

Automaatiotestaukseen liittyvä riski on

  • Alkuperäiset kustannukset ovat korkeat
  • Automaatio ei ole koskaan 100%
  • Ei automatisoi korjaamatonta käyttöliittymää
  • Väärä arviointi ajasta ja vaivasta
  • Automaatiotyökalujen yhteensopimattomuus.

Automaation testauksen edut

Edut automaatio testaus on

  • Testitapausten suorittaminen on yksinkertaistettua
  • Parantaa testin luotettavuutta
  • Vähentää ylläpitokustannuksia
  • Testitulokset tehdään julkisesti
  • Ei inhimillisiä virheitä
  • Säästää aikaa ja muistia.

Tässä on kuvattu ohjelmisto automaatiotestaus, sen testausprosessi, automaatiotestaustyypit ja automaation testaustyökalu. Tässä on kysymys: 'Kuinka automaatiotestaus on parempi kuin manuaalinen testaus?'.