Što su testni podaci u testiranju softvera?

⚡ Pametni sažetak

Podaci o testiranju softvera su ulazni podaci koji se uvode u aplikaciju tijekom izvršavanja testa. Dobro osmišljeni podaci pokreću pozitivne, negativne, performansne i sigurnosne provjere, stoga se moraju generirati, anonimizirati i osvježavati tijekom životnog ciklusa proizvoda.

  • Planirati unaprijed: Izgradite testne podatke uz testne slučajeve kako nedostajući unosi ili postavke okruženja nikada ne bi blokirali izvršavanje.
  • 🎯 Pokrijte svaki scenarij: Pripremite pozitivne, negativne, granične i ekvivalentne skupove podataka o particijama koji su odvojeni i jasno označeni.
  • 🛡️ Maska prije kopiranja: Uskladite skupove podataka o performansama s volumenom i oblikom proizvodnje, ali anonimizirajte osjetljiva polja prije nego što se napravi bilo kakva kopija.
  • Automatizirajte teško dizanje: Koristite generatore ili AI alate za skaliranje realističnih skupova podataka, smanjenje ručnog rada i izbjegavanje dupliciranja.
  • 🔄 Osvježi svako izdanje: Revpregledajte skupove podataka nakon promjena sheme, novih značajki i regulatornih ažuriranja kako stari podaci ne bi generirali lažne prolaze.

Testni podaci u testiranju softvera

Kao tester, možda mislite da je dizajniranje testnih slučajeva dovoljno izazovno - pa zašto se zamarati nečim tako rutinskim kao što su testni podaci? Ovaj vodič predstavlja testne podatke, objašnjava zašto su važni i dijeli praktične savjete za njihovo brzo generiranje.

Što su testni podaci u testiranju softvera?

Testni podaci u testiranju softvera je ulaz koji se daje softverskom programu tijekom izvršavanja testa. Predstavlja podatke koji utječu na softver ili su pod utjecajem softvera tijekom testiranja. Testni podaci koriste se u pozitivnom testiranju - za provjeru da li funkcije daju očekivane rezultate za zadane ulaze - i u negativnom testiranju, za provjeru kako softver obrađuje neobične, iznimne ili nevažeće ulaze.

Loše osmišljeni testni podaci ne pokrivaju sve moguće scenarije, što izravno narušava kvalitetu softvera.

Testni podaci u testiranju softvera

Što je generiranje testnih podataka i zašto bi testni podaci trebali biti stvoreni prije izvršavanja testa?

Testiranje je proces koji proizvodi i troši velike količine podataka. Podaci korišteni u testiranju opisuju početne uvjete za test i predstavljaju medij putem kojeg tester komunicira sa softverom. Stoga je ključni dio većine funkcionalna ispitivanja.

Ovisno o vašem testnom okruženju, možda ćete trebati stvoriti testirajte podatke od nule ili barem identificirajte odgovarajući postojeći skup podataka za svoje test slučajeviTestni podaci se obično stvaraju sinkronizirano s testnim slučajem koji podržavaju.

Podaci za testiranje mogu se generirati na četiri uobičajena načina:

  • Ručno, od strane testera ili poslovnog analitičara.
  • Masovno kopiranje podataka iz produkcijskog okruženja u testno okruženje.
  • Masovno kopiranje testnih podataka iz naslijeđenih klijentskih sustava.
  • Alati za automatsko generiranje testnih podataka.

Treba generirati uzorke podataka prije izvršavanje testa počinje jer je kasnije stvaranje teško upravljati. Mnoga testna okruženja zahtijevaju više prethodnih koraka ili dugotrajnu konfiguraciju prije nego što se podaci mogu učitati. Ako se generiranje podataka dogodi tijekom faze izvršavanja, riskirate propuštanje roka za testiranje.

U donjim odjeljcima opisano je nekoliko vrsta testiranja zajedno s prijedlozima za njihove potrebe u pogledu testnih podataka.

Testni podaci za bijelo Box Ispitivanje

In Bijela Box Ispitivanje, upravljanje testnim podacima izvedeno je iz izravnog ispitivanja koda koji se testira. Kriteriji odabira obično uključuju:

  • Pokrivenost poslovnica: generirati podatke tako da se svaka grana u izvornom kodu testira barem jednom.
  • Testiranje puta: podatke o obrtu tako da se svaki put vježba barem jednom.
  • Negativan API testiranje: koristite nevažeće tipove parametara ili nevažeće kombinacije argumenata za pozivanje internih metoda.

Testni podaci za testiranje performansi

Ispitivanje performansi mjeri koliko brzo sustav reagira pod određenim opterećenjem. Cilj nije pronaći funkcionalne greške, već identificirati uska grla. Uzorak skupa podataka mora biti vrlo blizu stvarno ili uživo proizvodne podatke kako bi rezultati bili smisleni.

Kako dolazite do takvih podataka? Najpouzdaniji izvor je kupci sami. Mogu ili pružiti postojeći skup podataka ili opisati kako izgledaju podaci iz stvarnog svijeta kako biste ih mogli modelirati. U ispitivanje održavanja projekta, možete kopirati podatke iz produkcije u testni prostor. Dobra je praksa anonimizirati (promiješati) osjetljiva polja - brojeve socijalnog osiguranja, brojeve kreditnih kartica, bankovne podatke - prije nego što se napravi bilo kakva kopija.

Testni podaci za sigurnosno testiranje

Ispitivanje sigurnosti provjerava štiti li informacijski sustav podatke od zlonamjernih namjera. Skupovi podataka moraju pokrivati ​​četiri stupa:

  • Povjerljivost: Informacije od klijenata čuvaju se u strogoj tajnosti i ne dijele se s vanjskim stranama. Ako aplikacija koristi SSL, dizajnirajte podatke koji dokazuju da je enkripcija ispravna.
  • Integrity: Informacije koje je vratio sustav su točne. Izgradite podatke pregledom dizajna, koda, shema baze podataka i struktura datoteka.
  • Ovjera: proces utvrđivanja korisničkog identiteta. Koristite različite kombinacije korisničkih imena i lozinki kako biste provjerili da samo ovlaštene osobe imaju pristup.
  • Autorizacija: prava dodijeljena određenom korisniku. Kombinirajte korisnike, uloge i operacije kako biste potvrdili da samo korisnici s dovoljnim privilegijama mogu izvršiti određenu operaciju.

Testni podaci za crnu boju Box Ispitivanje

U crnom Box Testiranje koda nije vidljivo testeru. Funkcionalni testni slučajevi trebaju uključivati ​​podatke koji zadovoljavaju sljedeće kriterije:

  • Nema podataka: provjerite odgovor kada ništa nije poslano.
  • Važeći podaci: provjerite odgovor s ispravnim testnim podacima.
  • Nevažeći podaci: provjerite odgovor s netočnim testnim podacima.
  • Nedozvoljen format podataka: provjerite odgovor kada su podaci u nepodržanom formatu.
  • Skup podataka o graničnim uvjetima: podaci koji se nalaze na minimalnim, maksimalnim i vrijednostima neposredno izvan graničnih vrijednosti.
  • Skup podataka o particiji ekvivalencije: podaci koji predstavljaju svaku klasu ekvivalencije.
  • Skup podataka tablice odluka: podaci koji primjenjuju svako pravilo u tablici odlučivanja.
  • Skup podataka o prijelazu stanja: podaci koji vode sustav kroz svaki definirani prijelaz stanja.
  • Podaci o testiranju slučaja upotrebe: podaci usklađeni sa slučajevima upotrebe od početka do kraja.

Bilješka: Ovisno o testiranoj aplikaciji, možete koristiti neke ili sve gore navedene kategorije.

Alati za automatsko generiranje testnih podataka

Automatizirani alati generiraju velike, raznolike skupove podataka brže od bilo kojeg ručnog procesa. Dva dugogodišnja primjera su:

  • Podaci o testiranju DTM-a Generator — prilagodljivi uslužni program koji stvara podatke, tablice, prikaze i postupke za scenarije testiranja baze podataka, uključujući performanse, osiguranje kvalitete, opterećenje i upotrebljivost.
  • Datatect - an SQL generator podataka tvrtke Banner Software koji stvara realistične testne podatke u ASCII ravnim datotekama ili izravno u RDBMS sustave kao što su Oracle, Sybase, SQL Server i Informix.

Za procijenjeni, ažurirani uži izbor pogledajte 10 najboljih testnih podataka Generator Alati.

Najbolje prakse za upravljanje testnim podacima

Pouzdani podaci ispitivanja ovise o discipliniranoj kućnoj pomoćipingSlijedite ove postupke kako biste održali skupove podataka zdravim u svim izdanjima:

  • Verzija vaših podataka: pohraniti skupove podataka u repozitorij uz testne slučajeve koji ih koriste kako bi promjene bile revidirane.
  • Polja osjetljiva na masku: anonimizirati osobne, financijske i zdravstvene podatke prije kopiranja iz produkcije.
  • Redovito osvježavajte: ponovno izgraditi skupove podataka u svakom izdanju kako bi se pratile promjene sheme i poslovnih pravila.
  • Očekivani rezultati dokumentiranja: Uparite svaki skup podataka s očekivanim rezultatom kako bi se neuspjesi lako trijažirali.
  • Automatiziraj sijanje: koristite skripte ili učvršćenja za učitavanje podataka na početku svakog testnog izvođenja, osiguravajući ponovljivost.

Pitanja i odgovori

Testni podaci su bilo koji unos u softver tijekom testiranja. Za obrazac za prijavu, primjeri uključuju valjano korisničko ime i lozinku (pozitivno), praznu lozinku (negativno) i e-poštu od 300 znakova (granica).

Testni slučaj opisuje korake i očekivani ishod jednog scenarija. Testni podaci su specifične ulazne vrijednosti unesene u te korake. Svaki testni slučaj treba vlastiti skup podataka koji vježba scenarij.

Dovoljno podataka je podatak koji pokriva svaku klasu ekvivalencije, granicu i scenarij ponderiran rizikom. Sam volumen nije jednak pokrivenosti. Mapirajte podatke na testne slučajeve i prestanite dodavati zapise kada se praznine u pokrivenosti zatvore.

Tek nakon maskiranja osjetljivih polja kao što su imena, brojevi računa i zdravstveni podaci. Nemaskirani produkcijski podaci krše propise poput GDPR-a i HIPAA-e te stvaraju stvarni rizik od kršenja ako je testno okruženje ugroženo.

Uobičajene kategorije su valjano, nevaljano, granica, particija ekvivalencije, tablica odlučivanja, prijelaz stanja, slučaj upotrebe i skupovi bez podataka. Svaka kategorija cilja drugačiji rizik u testiranoj aplikaciji.

Osvježite podatke testiranja nakon svake promjene sheme, većeg izdanja, regulatornog ažuriranja ili kad god se promijeni ponašanje produkcije. Zastarjeli skupovi podataka propuštaju nova pravila validacije i daju lažne prolaze tijekom regresijskog testiranja.

Alati umjetne inteligencije sintetiziraju realistične, raznolike skupove podataka koji slijede poslovna pravila, maskiraju osobne podatke i uravnotežuju pozitivne i negativne slučajeve. Također označavaju nedostajuće scenarije analizirajući zahtjeve i postojeću pokrivenost testovima.

Ne. Umjetna inteligencija ubrzava generiranje i potvrđuje obrasce, ali ljudski recenzenti moraju procijeniti poslovni rizik, rubne slučajeve i zahtjeve usklađenosti. Najučinkovitiji timovi spajaju skupove podataka generirane umjetnom inteligencijom sa stručnom kuracijom.

Sažmite ovu objavu uz: