Vertel me over het Triple A-principe in testen (Arrange, Act, Assert).
sobes.tech AI
Antwoord van AI
Het Triple A-principe (Arrange, Act, Assert) is een gestructureerde aanpak voor het schrijven van unittests, waardoor ze beter begrijpelijk, leesbaar en onderhoudbaar worden.
-
Arrange (Voorbereiden): In dit gedeelte wordt de benodigde toestand van het systeem of object voorbereid voor de test. Objecten worden geïnitialiseerd, beginwaarden ingesteld, afhankelijkheden geconfigureerd.
- Voorbeeld: Een instantie van een klasse maken, mocks of stubs instellen.
-
Act (Handelen): Hier wordt de te testen actie uitgevoerd of de functionaliteit aangeroepen die gecontroleerd moet worden. Dit is meestal een duidelijke oproep of actie.
- Voorbeeld: Een methode van een object aanroepen, een verzoek naar een API sturen.
-
Assert (Verifiëren): In deze fase wordt het resultaat van de uitgevoerde actie gecontroleerd. Het werkelijke resultaat wordt vergeleken met het verwachte.
- Voorbeeld: De geretourneerde waarde van een methode controleren, de toestand van het object, wijzigingen in de database.
Voorbeeld in C#:
// Arrange
var calculator = new Calculator();
int number1 = 5;
int number2 = 3;
// Act
int result = calculator.Add(number1, number2);
// Assert
Assert.AreEqual(8, result);
Voorbeeld in 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}"
Het gebruik van Triple A helpt om de stappen in de test duidelijk te scheiden, wat het begrip vergemakkelijkt over wat precies wordt getest en welk resultaat wordt verwacht. Dit vereenvoudigt debugging en refactoring van tests.