Sobes.tech
Junior

Mesélj a Triple A elvről a tesztelésben (Arrange, Act, Assert).

sobes.tech MI

Válasz az MI-től

A Triple A (Arrange, Act, Assert) elv egy strukturált megközelítés az egységtesztek írásához, amelyeket így könnyebben érthetővé, olvashatóbbá és karbantarthatóbbá tesz.

  1. Arrange (Előkészítés): Ebben a szakaszban a teszteléshez szükséges rendszer vagy objektum állapota előkészül. Objektumokat inicializálunk, kezdő adatokat állítunk be, függőségeket konfigurálunk.

    • Példa: Osztálypéldány létrehozása, mock-ok vagy stub-ok beállítása.
  2. Act (Cselekvés): Itt hajtjuk végre a tesztelendő műveletet vagy hívjuk meg a vizsgálandó funkciót. Általában egyértelmű hívás vagy művelet.

    • Példa: Egy objektum metódusának hívása, kérés küldése egy API-hoz.
  3. Assert (Ellenőrzés): Ebben a szakaszban ellenőrizzük a végrehajtott művelet eredményét. Összehasonlítjuk a tényleges eredményt a várt eredménnyel.

    • Példa: Egy metódus visszatérési értékének ellenőrzése, az objektum állapotának, az adatbázisban történt változásoknak a vizsgálata.

C# példa:

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

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

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

Python példa:

# 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}"

A Triple A használata segít egyértelműen szétválasztani a lépéseket a tesztben, ami megkönnyíti annak megértését, hogy pontosan mit tesztelünk és milyen eredményt várunk. Ez megkönnyíti a hibakeresést és a tesztek refaktorálását.