Mitä on tutkiva testaus?

⚡ Älykäs yhteenveto

Tutkiva testaus on testausmenetelmä, jossa testaajat suunnittelevat ja suorittavat testitapauksia samanaikaisesti ilman, että niitä skriptataan etukäteen. Tämä korostaa tutkimista, oppimista ja testaajan intuitiota sellaisten vikojen paljastamiseksi, jotka skriptattu testaus usein jättää huomaamatta. Tätä menetelmää käytetään laajalti ketterässä kehityksessä.

  • 🔍 Tutkivan testauksen määritelmä: Testaajat suunnittelevat ja suorittavat testejä lennossa sen sijaan, että skriptaisivat ne etukäteen.
  • 🆚 vs. skriptattu testaus: Skriptitestaus vahvistaa vaatimukset; tutkiva testaus tutkii ja mukauttaa testausta samalla.
  • 🧠 Ajattelutoiminta: Se korostaa oppimista, luovuutta ja testaajien intuitiota piilevien virheiden löytämiseksi.
  • 🗂️ SBTM-prosessi: Virheiden luokittelu, testaussuunnitelma, aikataulu, tulosten tarkastelu ja purku.
  • Paras: Puuttuvat vaatimukset, varhaiset iteraatiot, kriittiset sovellukset ja kokeneet testaajat.
  • 🇧🇷 Kompromissi: Löytää enemmän bugeja ja kannustaa luovuuteen, mutta on vahvasti riippuvainen testaajien taidoista.

Mitä on tutkiva testaus

Mitä on tutkiva testaus?

Tutkiva testaus on ohjelmistotestaus, jossa testitapauksia ei luoda etukäteen, vaan testaajat tarkistavat järjestelmän lennossa. He voivat kirjoittaa muistiin ideoita siitä, mitä testata ennen testin suorittamista. Tutkivan testauksen painopiste on enemmän testaamisessa "ajatteluna".

Tutkivaa testausta käytetään laajasti ketterissä malleissa, ja siinä on kyse löytämisestä, tutkimisesta ja oppimisesta. Se korostaa yksittäisen testaajan henkilökohtaista vapautta ja vastuuta.

Miksi tutkiva testaus?

Käsikirjoitetussa testauksessa suunnittelet ensin testitapaukset ja jatkat myöhemmin testin suorittamista. Päinvastoin, tutkiva testaus on samanaikainen testin suunnittelun ja testin suorittamisen prosessi, joka tehdään kaikki samaan aikaan.

Skriptattu testien suorittaminen on yleensä ajattelematonta toimintaa, jossa testaajat suorittavat testivaiheet ja vertaavat todellisia tuloksia odotettuihin tuloksiin. Tällainen testien suorittaminen voidaan automatisoida, koska se ei vaadi paljon kognitiivisia taitoja.

Tutkiva testaus

Vaikka ohjelmistotestauksen nykyinen trendi on vaatia automaatio, tutkiva testaus on uusi tapa ajatella. Automaatiolla on rajansa

Tutkiva testaus

Erot käsikirjoitetun ja tutkivan testauksen välillä

Käsikirjoitettu testaus Tutkiva testaus
Ohjattu vaatimuksista Ohjattu vaatimuksista ja tutkimalla testauksen aikana
Testitapausten määrittäminen hyvissä ajoin Testitapausten määrittäminen testauksen aikana
Testauksen vahvistus vaatimusten mukaisesti Järjestelmän tai sovelluksen tutkiminen
Korostaa ennustamista ja päätöksentekoa Korostaa sopeutumiskykyä ja oppimista
Sisältää vahvistetun testauksen Sisältää tutkinnan
Kyse on testien hallinnasta Kyse on testisuunnittelun parantamisesta
Kuten puheen pitäminen – luet luonnoksesta Kuten keskustelun aloittaminen – se on spontaania
Käsikirjoitus on hallinnassa Testaajan mieli on hallinnassa

Tutkivat testaustekniikat

  • Se ei ole satunnaista testausta, vaan se on ad hoc -testausta, jonka tarkoituksena on löytää vikoja
  • On jäsennelty ja tiukka
  • Onko kognitiivisesti (ajattelu) jäsennelty verrattuna käsikirjoitetun testauksen menettelyrakenteeseen. Tämä rakenne tulee Charterista, aikanyrkkeilystä jne.
  • On erittäin opettavainen ja hallittavissa
  • Se ei ole tekniikka vaan lähestymistapa. Se, mitä teet seuraavaksi, määräytyy sen mukaan, mitä teet tällä hetkellä

Kuinka suorittaa tutkivia testejä

Seuraavassa on vaiheittainen prosessi tutkivan testauksen suorittamisesta, jota kutsutaan myös istuntopohjaiseksi testinhallintaksi (SBTM Cycle):

Vaihe 1) Luo bugitaksonomia (luokitus)

  • Luokittele yleisimmät aiemmissa projekteissa löydetyt viat
  • Analysoi ongelmien tai vikojen perussyyanalyysi
  • Etsi riskit ja kehitä ideoita sovelluksen testaamiseksi.

Vaihe 2) Testaa peruskirja

  • Testiperuskirjan pitäisi ehdottaa
    1. mitä testata
    2. miten sitä voi testata
    3. Mitä pitää katsoa
  • Testiideat ovat tutkimustestauksen lähtökohta
  • Testauskirja auttaa määrittämään, kuinka loppukäyttäjä voisi käyttää järjestelmää

Vaihe 3) Aika Box

  • Tämä menetelmä sisältää testaajaparin, joka työskentelee yhdessä vähintään 90 minuuttia
  • Näissä 90 minuutin istunnossa ei pitäisi olla keskeytyksiä
  • Aikataulua voidaan pidentää tai lyhentää 45 minuutilla
  • Tämä istunto rohkaisee testaajia reagoimaan järjestelmän vastaukseen ja valmistautumaan oikeaan tulokseen

Vaihe 4) Revkatso tulokset

  • Vikojen arviointi
  • Testauksesta oppimista
  • Peittoalueiden analyysi

Vaihe 5) Selvitys

  • Tulosten tulosten kokoaminen
  • Vertaa tuloksia peruskirjaan
  • Tarkista, tarvitaanko lisätestejä

Parhaiden käytäntöjen tutkiva testaus

Tutkivan suorituksen aikana on suoritettava seuraavat asiat:

  • Testauksen tehtävän pitäisi olla hyvin selkeä
  • Tee muistiinpanoja siitä, mitä pitää testata, miksi se pitää testata ja arvioida tuotteen laatua
  • Tracking tutkivan testauksen aikana esiin nousseista kysymyksistä ja ongelmista
  • Parempi yhdistää testaajat tehokkaaseen testaukseen
  • Mitä enemmän testaamme, sitä todennäköisemmin suoritamme oikeat testitapaukset vaadituille skenaarioille

On erittäin tärkeää ottaa asiakirja ja seurata seuraavaa

  • Testin kattavuus – Olemmeko tehneet muistiinpanoja testitapausten kattavuudesta ja parantaneet ohjelmiston laatua
  • Riskit – Mitkä riskit on katettava ja mitkä ovat tärkeitä?
  • Test Execution Log – tallenteet testin suorittamisesta
  • Ongelmat / Kyselyt – Tee muistiinpanoja kysymyksestä ja järjestelmän ongelmista

Älykkäämpi tutkiva testaus löytää enemmän virheitä lyhyemmässä ajassa.

Tutkivan testauksen plussat ja miinukset

edut

  • Tämä testaus on hyödyllinen, kun vaatimusasiakirjoja ei ole saatavilla tai se on vain osittain saatavilla
  • Se sisältää tutkintaprosessin, joka auttaa löytämään enemmän virheitä kuin normaali testaus.
  • Paljasta vikoja, jotka tavallisesti jätetään huomiotta muissa testaustekniikoissa
  • Auttaa laajentamaan testaajien mielikuvitusta suorittamalla yhä enemmän testitapauksia, mikä lopulta parantaa myös tuottavuutta
  • Tämä testaus kattaa sovelluksen pienimmän osan ja kattaa kaikki vaatimukset
  • Tämä testaus kattaa kaiken tyyppiset testaukset ja se kattaa erilaisia ​​skenaarioita ja tapauksia
  • Kannustaa luovuuteen ja intuitioon
  • Uusien ideoiden luominen testin aikana

Haitat

  • Tämä testaus riippuu puhtaasti testaajan taidoista
  • Testaajan verkkotunnuksen tuntemus rajoittaa
  • Ei sovellu pitkälle suoritusajalle

Tutkivan testauksen haasteet

Tutkivassa testauksessa on monia haasteita, ja ne selitetään alla:

  • Sovelluksen tai ohjelmistojärjestelmän käytön oppiminen on haaste
  • Epäonnistumisen toistaminen on vaikeaa
  • Sen määrittäminen, tarvitaanko työkaluja, voi olla haastavaa
  • Parhaiden testitapausten määrittäminen voi olla vaikeaa
  • Testitulosten raportointi on haaste, koska raportissa ei ole suunniteltuja skriptejä tai tapauksia, joita voitaisiin verrata todelliseen tulokseen
  • Kaikkien suorituksen aikana tapahtuneiden tapahtumien dokumentointia on vaikea tallentaa
  • Tutkivalla testauksella ei ole suoria suoritettavia testitapauksia, joten on vaikea päättää, milloin lopettaa.

Milloin tutkivaa testausta käytetään?

Tutkivaa testausta voidaan käyttää laajasti, kun

  • Testausryhmässä on kokeneita testaajia
  • Varhainen iterointi vaaditaan
  • On kriittinen sovellus
  • Uusia testaajia tuli tiimiin

UKK

Tutkiva testaus on strukturoitua, tarkoituksenmukaista ja käyttää toimintaohjeita ja aikarajoja virheiden löytämiseen, kun taas ad-hoc-testaus on epämuodollista ja suunnittelematonta. Tutkiva testaus on dokumentoitua ja toistettavissa olevaa; ad-hoc-testaus ei yleensä ole.

Tutkiva testaus on pääasiassa manuaalista, ajatteluun perustuvaa toimintaa, koska se perustuu testaajien intuitioon ja reaaliaikaisiin päätöksiin. Työkalut voivat kuitenkin tallentaa istuntoja, kerätä lokeja ja tukea dokumentointia testauksen aikana.

SBTM on jäsennelty tapa suorittaa tutkivaa testausta aikarajoissa olevissa, aikataulun mukaisissa istunnoissa. Testaajat dokumentoivat löydöksensä ja käyvät sitten läpi kattavuuden, viat ja sen, tarvitaanko lisätestausta.

Tekoäly tukee tutkivaa testausta ehdottamalla testi-ideoita, luomalla harjoitussuunnitelmia, analysoimalla lokeja poikkeamien varalta ja tunnistamalla testaamattomia alueita. Se täydentää testaajan intuitiota sen sijaan, että korvaisi tutkivan ajatteluprosessin.

Ei. Tutkiva testaus perustuu ihmisen luovuuteen, uteliaisuuteen ja toimialakohtaiseen harkintaan, jota tekoäly ei pysty täysin toistamaan. Tekoäly auttaa käsittelemällä toistuvia analyysejä, mutta taitavat testaajat ovat edelleen välttämättömiä löydökselle.

Tiivistä tämä viesti seuraavasti: