Sobes.tech
Junior

Vorbește despre principiul Triple A în testare (Arrange, Act, Assert).

sobes.tech AI

Răspuns de la AI

Principiul Triple A (Arrange, Act, Assert) este o abordare structurată pentru scrierea testelor unitare, care le face mai ușor de înțeles, citit și întreținut.

  1. Arrange (Pregătire): În această etapă, se pregătește starea necesară a sistemului sau a obiectului pentru testare. Se inițializează obiecte, se stabilesc datele inițiale, se configurează dependențele.

    • Exemplu: Crearea unei instanțe de clasă, configurarea mock-urilor sau stubs.
  2. Act (Acțiune): Aici, se execută acțiunea testată sau se apelează funcționalitatea care trebuie verificată. De obicei, este o apelare sau o acțiune clară.

    • Exemplu: Apelarea unei metode a obiectului, trimiterea unei cereri către API.
  3. Assert (Verificare): În această etapă, se verifică rezultatul acțiunii efectuate. Se compară rezultatul real cu cel așteptat.

    • Exemplu: Verificarea valorii returnate de metodă, a stării obiectului, a modificărilor în baza de date.

Exemplu în C#:

// Arrange
var calculator = new Calculator();
int number1 = 5;
int number2 = 3;

// Act
int result = calculator.Add(number1, number2);

// Assert
Assert.AreEqual(8, result);

Exemplu în Python:

# Arrange
class Calculator:
    def add(self, a, b):
        return a + b

calc = Calculator()
num1 = 5
num2 = 3

# Act
result = calc.add(num1, num2)

# Assert
assert result == 8, f"Expected 8, but got {result}"

Utilizarea principiului Triple A ajută la separarea clară a pașilor în test, ceea ce facilitează înțelegerea a ceea ce se testează și rezultatul așteptat. Acest lucru simplifică depanarea și refactorizarea testelor.