Intern
Ce este un test unitar?
sobes.tech AI
Răspuns de la AI
Testul unitar este o metodă de testare a software-ului în care părțile minime, posibil minimale ale codului (unități, de obicei funcții, metode sau clase) sunt izolate și verificate pentru conformitatea cu comportamentul așteptat.
Obiectivele testării unitare:
- Verificarea logicii: Verificarea corectitudinii unei secțiuni specifice de cod în izolare.
- Detectarea timpurie a defectelor: Identificarea erorilor în faza de dezvoltare, când corectarea lor este cea mai ieftină.
- Facilitarea refactorizării: Asigurarea că modificările în cod nu vor strica funcționalitatea existentă.
- Documentație: Testele unitare pot servi ca exemplu de utilizare a codului.
- Îmbunătățirea designului codului: Scrierea de cod testabil duce adesea la un design mai modular și mai ușor de înțeles.
Caracteristici cheie ale testelor unitare:
- Automatizare: Sunt executate automat de către framework-urile de testare.
- Izolare: Testarea unei unități, minimizând dependențele de sistemele externe (baze de date, rețea, sistem de fișiere), adesea folosind mock-uri sau stubs.
- Viteză de execuție: Trebuie să fie foarte rapide, pentru a putea fi rulate frecvent (de exemplu, la fiecare modificare de cod sau înainte de commit).
- Determinism: Rezultatul testului trebuie să fie același la fiecare execuție, dacă codul testat nu s-a schimbat.
Exemplu în Python cu pytest:
def add(a, b):
"""Adaugă două numere."""
return a + b
def test_add_positive_numbers():
# Testarea adunării a două numere pozitive
assert add(2, 3) == 5
def test_add_negative_numbers():
# Testarea adunării a două numere negative
assert add(-1, -5) == -6
def test_add_zero():
# Testarea adunării cu zero
assert add(0, 7) == 7