Maison >développement back-end >Tutoriel Python >Comment exécuter des tests unitaires dans une structure de répertoires de projet Python standard ?

Comment exécuter des tests unitaires dans une structure de répertoires de projet Python standard ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-28 10:53:14569parcourir

How to Run Unit Tests in a Standard Python Project Directory Structure?

Exécuter des tests unitaires avec une structure de répertoires standard

Considérez la structure de répertoires courante suivante pour un module Python :

new_project/
    antigravity/
        antigravity.py
    test/
        test_antigravity.py
    setup.py
    etc.

La question se pose : comment exécute-t-on les tests ? Bien qu'il soit tentant d'exécuter simplement python test_antigravity.py à partir du répertoire de test, cela échouera en raison de l'absence du module dans le chemin d'importation.

Utilisation de la CLI unittest

L'approche recommandée consiste à exploiter l'interface de ligne de commande (CLI) unittest, qui augmente automatiquement le chemin sys.path avec les éléments nécessaires. répertoires.

Exécuter un seul test

Par exemple, pour exécuter un seul module de test (test_antigravity.py), accédez au répertoire new_project et exécutez :

python -m unittest test.test_antigravity

Importation de modules

Pour une structure de répertoires comme celle à condition, il est crucial de convertir à la fois l'antigravité et le test en packages en incluant les fichiers __init__.py dans les deux répertoires. Cela permet une importation transparente du package antigravité et de ses modules dans le module de test.

Exécuter tous les tests

Pour exécuter tous les tests, tirez parti de la découverte de tests, qui identifie automatiquement et exécute tous les modules et packages de test (avec des noms commençant par test*). Accédez au répertoire new_project et exécutez :

python -m unittest discover

Instructions pour les utilisateurs

Pour simplifier le processus pour les utilisateurs, fournissez des instructions claires :

To run the unit tests:

``` cd new_project```

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn