pour utiliser ces techniques en pratique. CHECKLIST AVANT D'ÉCRIRE LES TESTS ✓ Lister le domaine d'entrée de chaque paramètre ✓ Identifier les classes d'équivalence (valides ET invalides) ✓ Repérer chaque borne : <, ≤, ==, ≥, > ✓ Pour chaque borne B, tester B-1, B, B+1 ✓ Un représentant suffit pour le cœur de la classe ✓ Paramétrer les tests (ex. pytest.parametrize, JUnit @ParameterizedTest) EXEMPLE EN PYTEST import pytest @pytest.mark.parametrize( "qty, expected", [ (0, ValueError), # borne + classe (1, 500), (5, 500), (6, 300), (20, 300), (21, 100), (100, 100), (101, 0), ]) def test_shipping(qty, expected): if isinstance(expected, type): with pytest.raises(expected): shipping_cost(qty) else: assert shipping_cost(qty) == expected Un test paramétré = un tableau de cas issus directement de l'analyse des classes et des bornes. 9 / 10