Mitä testidata on ohjelmistotestauksessa?

⚡ Älykäs yhteenveto

Ohjelmistotestauksen testidata on sovellukselle testin suorituksen aikana syötettyä dataa. Hyvin suunniteltu data ohjaa positiivisia, negatiivisia, suorituskyky- ja tietoturvatarkistuksia, joten se on luotava, anonymisoitava ja päivitettävä koko tuotteen elinkaaren ajan.

  • ️ Suunnitella etukäteen: Rakenna testidataa testitapausten rinnalla, jotta puuttuvat syötteet tai ympäristön asetukset eivät koskaan estä suoritusta.
  • 🎯 Kattaa kaikki skenaariot: Laadi erilliset ja selkeästi nimetyt positiivisten, negatiivisten, reuna- ja ekvivalenssiosioiden tietojoukot.
  • 🛡️ Peitä ennen kopiointia: Yhdistä suorituskykydatajoukot tuotantomäärään ja -muotoon, mutta anonymisoi arkaluontoiset kentät ennen kopioiden tekemistä.
  • ⚙️ Automatisoi raskaat nostot: Käytä generaattoreita tai tekoälytyökaluja skaalataksesi realistisia tietojoukkoja, vähentääksesi manuaalista työtä ja välttääksesi päällekkäisyyksiä.
  • 🔄 Päivitä jokainen julkaisu: Revtarkastella datajoukkoja kaavamuutosten, uusien ominaisuuksien ja sääntelypäivitysten jälkeen, jotta vanhat tiedot eivät tuota virheellisiä läpäisyjä.

Testitiedot ohjelmistotestauksessa

Testaajana saatat ajatella, että testitapausten suunnittelu on jo itsessään tarpeeksi haastavaa – miksi siis vaivautua johonkin niin rutiininomaiseen asiaan kuin testidataan? Tämä tutoriaali esittelee testidatan, selittää miksi se on tärkeää ja jakaa käytännön vinkkejä sen nopeaan luomiseen.

Mitä testidata on ohjelmistotestauksessa?

Testitiedot ohjelmistotestauksessa on ohjelmistolle testin suorituksen aikana annettu syöte. Se edustaa dataa, joka joko vaikuttaa ohjelmistoon tai johon ohjelmisto vaikuttaa testauksen aikana. Testidataa käytetään positiivisessa testauksessa – sen varmistamiseksi, että funktiot tuottavat odotettuja tuloksia annetuilla syötteillä – ja negatiivisessa testauksessa sen tarkistamiseksi, miten ohjelmisto käsittelee epätavallisia, poikkeuksellisia tai virheellisiä syötteitä.

Huonosti suunniteltu testidata ei kata kaikkia mahdollisia skenaarioita, mikä heikentää suoraan ohjelmiston laatua.

Testitiedot ohjelmistotestauksessa

Mitä on testidatan luominen ja miksi testidata tulisi luoda ennen testin suorittamista?

Testaus on prosessi, joka tuottaa ja kuluttaa suuria määriä dataa. Testauksessa käytetty data kuvaa testin alkuolosuhteet ja on väline, jonka kautta testaaja on vuorovaikutuksessa ohjelmiston kanssa. Siksi se on olennainen osa useimpia testejä. toiminnalliset testit.

Testausympäristöstäsi riippuen saatat joutua luoda testaa dataa tyhjästä tai ainakin tunnista sopiva olemassa oleva datajoukko tarkoitukseesi testitapauksetTestidata luodaan tyypillisesti synkronoituna sen tukeman testitapauksen kanssa.

Testidataa voidaan luoda neljällä yleisellä tavalla:

  • Manuaalisesti, testaajan tai liiketoiminta-analyytikon toimesta.
  • Datan massakopiointi tuotantoympäristöstä testiympäristöön.
  • Testidatan massakopiointi vanhoista asiakasjärjestelmistä.
  • Automatisoidut testidatan luontityökalut.

Näytedata tulisi luoda ennen testin suoritus alkaa, koska sen luominen myöhemmin on vaikea hallita. Monet testausympäristöt vaativat useita esivaiheita tai aikaa vievää konfigurointia ennen kuin tiedot voidaan ladata. Jos tiedot generoidaan suoritusvaiheen aikana, on olemassa riski, että testauksen määräaika unohtuu.

Seuraavissa osioissa kuvataan useita testaustyyppejä sekä annetaan ehdotuksia niiden testidatatarpeisiin.

Testitiedot valkoiselle Box Testaus

In Valkoinen Box Testaus, testidatan hallinta perustuu testattavan koodin suoraan tarkasteluun. Valintakriteereihin kuuluvat tyypillisesti:

  • Konttorin kattavuus: generoi dataa siten, että jokainen lähdekoodin haara testataan ainakin kerran.
  • Polun testaus: käsityötiedot siten, että jokaista polkua harjoitellaan ainakin kerran.
  • Negatiivinen API-testaus: käytä virheellisiä parametrityyppejä tai virheellisiä argumenttiyhdistelmiä sisäisten metodien kutsumiseen.

Testitiedot suorituskykytestausta varten

Suorituskykytestaus mittaa, kuinka nopeasti järjestelmä reagoi tietyn työmäärän alla. Tavoitteena ei ole löytää toiminnallisia virheitä, vaan tunnistaa pullonkauloja. Näyteaineiston on oltava hyvin lähellä oikeasti vai elävästi tuotantotietoja, jotta tulokset olisivat merkityksellisiä.

Miten saat tällaista tietoa? Luotettavin lähde on asiakkaat itse. He voivat joko tarjota olemassa olevan tietojoukon tai kuvata, miltä reaalimaailman data näyttää, jotta voit mallintaa sitä. huoltotestaus projektissa voit kopioida tietoja tuotannosta testiympäristöön. On hyvä käytäntö anonyymiseksi (sekoita) arkaluontoiset kentät – sosiaaliturvatunnukset, luottokorttinumerot, pankkitiedot – ennen minkään kopion tekemistä.

Testitiedot turvatestausta varten

Suojaustestaus varmistaa, että tietojärjestelmä suojaa tietoja pahantahtoisilta aikeilta. Tietojoukkojen on katettava neljä pilaria:

  • Luottamuksellisuus: Asiakkailta saatuja tietoja säilytetään ehdottoman luottamuksellisesti, eikä niitä jaeta ulkopuolisten tahojen kanssa. Jos sovellus käyttää SSL-salausta, suunnittelutiedot todistavat salauksen oikeellisuuden.
  • Integrity: järjestelmän palauttamat tiedot ovat oikein. Muodosta dataa tarkastelemalla suunnittelua, koodia, tietokantakaavoja ja tiedostorakenteita.
  • Authentication: käyttäjän identiteetin varmistamisprosessi. Käytä erilaisia ​​käyttäjätunnus- ja salasanayhdistelmiä varmistaaksesi, että vain valtuutetut henkilöt pääsevät järjestelmään.
  • Valtuutus: tietylle käyttäjälle myönnetyt oikeudet. Yhdistä käyttäjiä, rooleja ja toimintoja varmistaaksesi, että vain riittävät oikeudet omaavat käyttäjät voivat suorittaa tietyn toiminnon.

Mustan testitiedot Box Testaus

Mustassa Box Koodin testaus ei ole testaajan nähtävissä. Toiminnallisten testitapausten tulisi sisältää dataa, joka täyttää seuraavat kriteerit:

  • Ei tietoja: Tarkista vastaus, kun mitään ei ole lähetetty.
  • Kelvolliset tiedot: Tarkista vastaus oikeilla testitiedoilla.
  • Virheelliset tiedot: Tarkista vastaus virheellisillä testitiedoilla.
  • Virheellinen tietomuoto: Tarkista vastaus, kun tiedot ovat tukemattomassa muodossa.
  • Reunaehtojen tietojoukko: data, joka sijaitsee minimi-, maksimi- ja juuri reuna-arvojen ulkopuolella.
  • Ekvivalenssiosioaineisto: data, joka edustaa kutakin ekvivalenssiluokkaa.
  • Päätöstaulukon tietojoukko: data, joka suorittaa kaikki päätöstaulukon säännöt.
  • Tilasiirtymädata: data, joka ohjaa järjestelmää kunkin määritellyn tilasiirtymän läpi.
  • Käyttötapaustestien tiedot: data linjattuna kokonaisvaltaisten käyttötapausten kanssa.

Huomautus: Testattavasta sovelluksesta riippuen voit käyttää joitakin tai kaikkia yllä olevista luokista.

Automatisoidut testidatan luontityökalut

Automatisoidut työkalut tuottavat suuria ja vaihtelevia tietojoukkoja nopeammin kuin mikään manuaalinen prosessi. Kaksi pitkäaikaista esimerkkiä ovat:

  • DTM-testitiedot Generator — muokattava apuohjelma, joka tuottaa tietoja, taulukoita, näkymiä ja proseduureja tietokannan testausskenaarioihin, mukaan lukien suorituskyky, laadunvarmistus, kuormitus ja käytettävyys.
  • Datatect - a SQL Banner Softwaren datageneraattori, joka luo realistista testidataa ASCII-tiedostomuotoon tai suoraan RDBMS-järjestelmiin, kuten Oracle, Sybase, SQL Server ja Informix.

Katso arvioitu ja ajantasainen lista osoitteesta 10 parasta testidataa Generator Työkalut.

Testidatan hallinnan parhaat käytännöt

Luotettava testidata riippuu kurinalaiselta siivoojaltapingNoudata näitä käytäntöjä pitääksesi tietojoukot kunnossa eri julkaisuissa:

  • Versioi tietosi: tallenna datajoukot repositorioon niitä käyttävien testitapausten rinnalle, jotta muutokset ovat auditoitavissa.
  • Peitä arkaluontoiset kentät: anonymisoi henkilö-, talous- ja terveystiedot ennen kopioimista tuotannosta.
  • Päivitä säännöllisesti: rakentaa tietojoukot uudelleen jokaisen julkaisun jälkeen pysyäkseen skeeman ja liiketoimintasääntöjen muutosten tahdissa.
  • Dokumentin odotetut tulokset: Yhdistä jokainen tietojoukko odotettuun tulokseen, jotta epäonnistumiset on helppo luokitella.
  • Automatisoi kylvö: Käytä skriptejä tai kiinnittimiä datan lataamiseen jokaisen testiajon alussa toistettavuuden varmistamiseksi.

UKK

Testidata on mitä tahansa ohjelmistolle testauksen aikana annettua syötettä. Kirjautumislomakkeelle esimerkkejä ovat kelvollinen käyttäjätunnus ja salasana (positiivinen), tyhjä salasana (negatiivinen) ja 300 merkin sähköpostiosoite (raja).

Testitapaus kuvaa yksittäisen skenaarion vaiheet ja odotetun lopputuloksen. Testidata on kyseisiin vaiheisiin syötettyjä tiettyjä syöttöarvoja. Jokainen testitapaus tarvitsee oman tietojoukkonsa, joka harjoittelee skenaariota.

Riittävä data on dataa, joka kattaa kaikki ekvivalenssiluokat, rajat ja riskipainotetut skenaariot. Pelkkä määrä ei riitä kattavuuteen. Yhdistä data testitapauksiin ja lopeta tietueiden lisääminen, kun kattavuusaukot sulkeutuvat.

Vasta arkaluonteisten kenttien, kuten nimien, tilinumeroiden ja terveystietojen, peittämisen jälkeen. Peittämätön tuotantodata rikkoo GDPR:n ja HIPAA:n kaltaisia ​​säännöksiä ja luo todellisen tietomurtoriskin, jos testiympäristö vaarantuu.

Yleisiä luokkia ovat validi, epäkelvo, raja, ekvivalenssiosio, päätöstaulukko, tilasiirtymä, käyttötapaus ja ei dataa -joukot. Jokainen luokka kohdistuu eri riskiin testattavassa sovelluksessa.

Päivitä testidata jokaisen kaavamuutoksen, merkittävän julkaisun, sääntelypäivityksen tai aina, kun tuotantokäyttäytyminen muuttuu. Vanhentuneet datajoukot eivät läpäise uusia validointisääntöjä ja tuottavat virheellisiä läpäisyjä regressiotestauksen aikana.

Tekoälytyökalut syntetisoivat realistisia ja vaihtelevia tietojoukkoja, jotka noudattavat liiketoimintasääntöjä, peittävät henkilötietoja ja tasapainottavat positiivisia ja negatiivisia tapauksia. Ne myös merkitsevät puuttuvat skenaariot analysoimalla vaatimuksia ja olemassa olevaa testikattavuutta.

Ei. Tekoäly nopeuttaa datajoukkojen luomista ja validoi malleja, mutta ihmisarvioijien on arvioitava liiketoimintariski, reunatapaukset ja vaatimustenmukaisuusvaatimukset. Tehokkaimmat tiimit yhdistävät tekoälyn luomat datajoukot asiantuntijan kuratointiin.

Tiivistä tämä viesti seuraavasti: