AAA (Arrange-Act-Assert)
Testing 🟢 JuniorDéfinition
Pattern de structuration des tests en 3 phases : Arrange (préparer les données), Act (exécuter l'action), Assert (vérifier le résultat). Rend les tests lisibles et uniformes.
Analogie
Comme une recette de cuisine : préparer les ingrédients (Arrange), cuisiner (Act), goûter et vérifier (Assert).
Exemple de code
test('applies 10% discount for VIP', () => {
// Arrange
const user = createUser({ vip: true });
const cart = createCart({ total: 100 });
// Act
const finalPrice = applyDiscount(user, cart);
// Assert
expect(finalPrice).toBe(90);
});
Cas d'usage
Comme structure standard pour tous les tests unitaires afin de maintenir la lisibilité et la cohérence.
Anti-pattern
Termes liés
En entretien
Explique-moi le pattern AAA dans un test.
AAA découpe un test en trois phases : Arrange pour préparer les données, Act pour exécuter l'action testée, et Assert pour vérifier le résultat. Ça rend les tests lisibles et uniformes.
Quelle erreur voit-on souvent dans le respect de cette structure ?
Mélanger l'Act et l'Assert dans la même ligne, ou enchaîner plusieurs Act dans un seul test. Ça brouille ce qui est réellement testé et rend l'échec difficile à interpréter.
Fiche mise à jour le 2026-09-27