PaliSkill
Python avancé

Leçon 9 / 10 — Chapitre 9: Mise en pratique : gestionnaire de tâches

Écrire des tests avec assert pour le gestionnaire

Neuvième étape : des fonctions de test dédiées (vues au huitième chapitre) pour vérifier GestionnaireTaches, avant de l'utiliser dans un vrai script.

def tester_ajouter():
    g = GestionnaireTaches()
    g.ajouter("Tache 1")
    assert len(g) == 1
    assert g.taches[0].terminee == False

def tester_marquer_terminee():
    g = GestionnaireTaches()
    g.ajouter("Tache 1")
    g.marquer_terminee("Tache 1")
    assert g.taches[0].terminee == True

def tester_marquer_terminee_inconnue():
    g = GestionnaireTaches()
    try:
        g.marquer_terminee("Inexistante")
        assert False, "Une KeyError aurait du etre levee"
    except KeyError:
        pass

def executer_tous_les_tests():
    tests = [tester_ajouter, tester_marquer_terminee, tester_marquer_terminee_inconnue]
    for test in tests:
        test()
        print(f"{test.__name__} : OK")

executer_tous_les_tests()

Ce code affiche trois lignes ... : OK : chaque fonction de test (vues au huitième chapitre) vérifie un comportement précis du gestionnaire, y compris le cas limite d'une tâche inconnue, qui doit lever une KeyError (vue à ce chapitre) plutôt que d'échouer silencieusement.

Tester chaque méthode séparément, plutôt que tout vérifier dans un seul gros test, permet d'identifier précisément quelle fonctionnalité casse si un changement ultérieur introduit un bug.

À vous de jouer : ajoutez une fonction tester_filtrer_par_statut qui vérifie filtrer_par_statut, et ajoutez-la à executer_tous_les_tests().

🔒

Continuez ce module

Débloquez les leçons restantes ainsi que la certification finale.

2 500 XOF / 3,81 € / 4,15 $

Débloquez les 87 leçons restantes de ce module

Votre paiement est vérifié avant l'activation de l'accès