Testare: Diferență între versiuni

De la Wiki.lug.ro
Salt la: navigare, căutare
(Cauzele defectelor)
(Ce inseamna "testarea software / QA Engineering?")
Linia 11: Linia 11:
 
Sa incepem!
 
Sa incepem!
  
===Ce inseamna "testarea software / QA Engineering?"===
+
===Ce inseamna "Testarea software / QA Engineering?"===
 +
----
 +
Nimic altceva decat suma tuturor procedurilor, operatiilor si actiunilor menite sa asigure buna functionare a programelor. Prin "buna functionare" intelegem:
 +
 
 +
* Respectarea specificatiilor / cererilor clientului
 +
* Implementarea corecta a cerintelor de functionare (requirements)
 +
* Absenta erorilor de proiectare logica si algoritmica
 +
* Siguranta datelor folosite in cadrul programului
 +
* Viteza optima de rulare a aplicatiei
 +
* Folosirea eficienta a resurselor disponibile
 +
* Grad ridicat de usability (?)
 +
 
 +
In acceptiunea generala, testarea in general se caracterizeaza prin rularea testelor. Aceasta este, in schimb, doar partea vizibila din exterior. Pentru a asigura toate cele de mai sus, este nevoie de mult mai multe etape pana a ajunge in punctul executiei testelor.
 +
Din motive de eficienta, planurile de teste trebuie neaparat sa contina si o perioada de timp alocata planificarii testelor, design-ului test case-urilor, planificarii executiei si, bineinteles, analizei rezultatelor.
 +
 
 +
Procesul fundamental de testare este alcatuit din urmatoarele activitati principale:
 +
 
 +
* Planificare si control
 +
* Analiza si Design
 +
* Implementare si executie
 +
* Evaluarea rezultatelor si raportarea acestora
 +
* Finalizarea procesului de testare
 +
 
 
===De ce avem nevoie de testare si cine o poate face?===
 
===De ce avem nevoie de testare si cine o poate face?===
 
===Principii===
 
===Principii===

Versiunea de la data 12 august 2009 00:33

Acest articol este în curs de editare de către dragos.iorgulescu. Dacă doriți să interveniţi în procesul de editare, cereți mai înainte permisiunea autorului pe pagina sa de discuţii.

Introducere

Cauzele defectelor


Defectele sunt cauzate de erorile umane introduse in timpul dezvoltarii unui program. Ele se manifesta fie prin functionarea incorecta a aplicatiei la nivel logic, fie prin nefunctionarea sa sau printr-un comportament, sa ii spunem, deviant (erori, crash-uri, etc.). Oricare are fi natura unui defect, el poarta numele de "BUG" (ce NU este un acronim de la "Behaves Usually Good" :) ). Bug-urile apar datorita faptului ca oamenii ce realizeaza aplicatiile sunt, evident, oameni. Indiferent de nivelul de experienta al dezvotlatorilor, design-erilor, arhitectilor si a testerilor, erorile sunt ceva natural. Problema care se ridica este "cum procedam astfel incat produsele software sa contina cat mai putine erori probabile?". Voi incerca prin cele ce urmeaza sa aduc cat mai multe raspunsuri si solutii acestei probleme.

Sa incepem!

Ce inseamna "Testarea software / QA Engineering?"


Nimic altceva decat suma tuturor procedurilor, operatiilor si actiunilor menite sa asigure buna functionare a programelor. Prin "buna functionare" intelegem:

  • Respectarea specificatiilor / cererilor clientului
  • Implementarea corecta a cerintelor de functionare (requirements)
  • Absenta erorilor de proiectare logica si algoritmica
  • Siguranta datelor folosite in cadrul programului
  • Viteza optima de rulare a aplicatiei
  • Folosirea eficienta a resurselor disponibile
  • Grad ridicat de usability (?)

In acceptiunea generala, testarea in general se caracterizeaza prin rularea testelor. Aceasta este, in schimb, doar partea vizibila din exterior. Pentru a asigura toate cele de mai sus, este nevoie de mult mai multe etape pana a ajunge in punctul executiei testelor. Din motive de eficienta, planurile de teste trebuie neaparat sa contina si o perioada de timp alocata planificarii testelor, design-ului test case-urilor, planificarii executiei si, bineinteles, analizei rezultatelor.

Procesul fundamental de testare este alcatuit din urmatoarele activitati principale:

  • Planificare si control
  • Analiza si Design
  • Implementare si executie
  • Evaluarea rezultatelor si raportarea acestora
  • Finalizarea procesului de testare

De ce avem nevoie de testare si cine o poate face?

Principii

Testarea si calitatea

Rolul testarii in cadrul dezvoltarii si a mentenantei

"Psihologia" testarii

Metode de testare

Metoda "White Box"

Metoda "Gray Box"

Metoda "Black Box"

Nivele de testare

Testarea componentei / Component testing

Testarea integrarii / Integration testing

Testarea unui sistem / System testing

Teste de acceptanta / Acceptance testing

Unelte