FRI:UNI:Vodenje projektov:Testiranje

Iz E-študij, proste zakladnice študentskega znanja

Skoči na: navigacija, iskanje

<==Nazaj

Vsebina

Testiranje

  • osrednja aktivnost pri preverjanju kvalitete
  • napake je potrebno preprečevati in sproti odkrivati
  • kasneše spremembe so drage
  • pri preverjanju:
    1. Verificiramo - ali opremo gradimo pravilno
    2. Validiramo - ali oprema ustreza zahtevam
  • izvajamo in preverjamo, če pride do napak
  • testni primeri morajo biti taki, da je verjetnost za napako čim večja
  • ne moremo vedno dokazati, da napak ni!
  • ne moremo vedno testirati vseh možnosti
  • s psihološkega vidika je testiranje destruktivno delo
  • analitiki, načrtovalci in koderji so lahko osebno prizadeti, ko jim najdemo napako ali pomanjkljivost
  • če testirajo isti ljudje kot kodirajo, lahko pride ko "konflikta interesov" (izberejo lahke testne primere)

Metode testiranja

Metode bele skrinjice ali strukturna analiza

  1. Testiranje glavnih poti
    • vsi ukazi se izvedejo vsaj enkrat
    • ugotoviti moramo število testnih poti in za vsako pripraviti testni primer
    • poti v diagramu poteka
  2. Testiranje zank
    • Preproste zanke: preskoči zanko, pojdi skozi zanko enkrat, pojdi skozi zanko dvakrat, pojdi skozi zanko m-krat (m<n), pojdi skozi zanko n-1,n,n+1 krat
    • Vgnezdene zanke: Začni pri notranji zanki, ostale posatvi na minimalne vrednosti; testiraj notranjo kot preprosto; nadaljuj z naslednjo, notranje postavi na tipične vrednosti, zunanje na minimalne; nadaljuj dokler nisi testiral vseh zank

Metoda črne skrinjce ali funkcionalna analiza

  • kasnejše faze testiranja
  • testne podatke razdelimo na ekvivalente particije (razrede), za vsak razred zadostuje en testni primer
  • Analiza mejnih vrednosti

Ročne metode testiranja

  • branje kode, dobro če bere tudi kdo ki ni pisal kode
  • Sledenje in preverjanje
  • postopna abstrakcija

Dokazovanje pravilnosti

  • skušamo dokazati, da program ustreza specifikaciji
  • izvedljivo le za kratke in preproste programe
  • za velike programe žal ni praktično izvedljivo

Postopek testiranja

Testiranje modulov

  • posamezne module testiramo po načelu bele skrinjice
  • sestavimo posebno testno konfiguracijo
  • bolj kot je modul notranje enoten in manj kot je soodvisen, lažje ga je testirati

Testiranje integracije

  • po principu črne skrinjice
  • integracija mora potekati postopno
  • integriramo od zgoraj navzdol ali od spodaj navzgor
  • lahko kombiniramo oba načina (da ne rabimo toliko testnih modulov)

Sistemsko testiranje

  • ko je sistem že integriran
  • validacija sistema
    • testiranje okrevanja
  • testiranje varnosti
  • testiranje obremenitve
  • testiranje občutljivosti
  • damo v poskusno uporabo v obliki alfa in beta verzij

Razhroščevanje

  • ni isto kot testiranje
  • išče vzroke za napake in jih odpravlja
  • razhroševanje je zahtevno
    • vzrok in posledica sta lahko zelo oddaljena
    • napaka lahko začasno izgine, ali pa je ne moramo reproducirati
    • vzrok je zaokroževanje
    • vzrok je določeno časovno zaporednje operacij
    • vzrok je v napačnih predpostavkah specifikacije

Formalna tehnična recenzija

  • recenzijski sestanki, recenzijske skupine
  • lahko sprejmejo, pogojno sprejmejo ali pa zavrnejo produkt
  • potrebno sprejeti pravila o delovanju recenzijskih skupin
  • recenzirati je potrebno produkt in ne avtorje
  • recenzija naj deluje konstruktivno
  • skupine naj bodo sestavljene iz različno izkušenih ljudi
Osebna orodja
Imenski prostori
Različice
Dejanja
navigacija

Tiskanje/izvoz
orodja