Bien configurer son environnement de développement Python : Standardiser l'exécution des tests avec tox. Partie 4
tox permet d’automatiser l’exécution de la suite de tests d’un projet dans plusieurs environnements virtuels (différentes versions de Python ou d’interpréteurs) en une seule commande. Cela s’avère vite indispensable lorsque l’on développe un module open source.
Cet article fait partie fait partie d’une série d’articles présentant quelques bonnes pratiques qui vous permettront d’avoir un environnement de développement Python aux petits oignons :
- Les environnements virtuels. Partie 1
- Personnaliser le script de démarrage du shell Python. Partie 2
- Valider son code Python avec flake8. Partie 3
- Standardiser l’exécution des tests avec tox. Partie 4
Standardiser l’exécution des tests avec tox
Intégrons le à un projet existant, au hasard Django :
# Créons un projet dédié
mkproject tox-django
(tox-django) cdproject
# Installation de tox
(tox-django) pip install tox
# Clone du code du projet Django
(tox-django) git clone git@github.com:django/django.git
Ajoutons à présent un fichier tox.ini permettant d’installer le projet et de lancer la suite de tests du projet dans deux environnements : Python 2.7 et Python 3.4. On en profite pour générer un rapport de couverture de test HTML qui s’ouvrira automatiquement.
(tox-django) cd django
(tox-django) vi tox.ini
1 |
|
Pour lancer les tests, une commande suffit à présent :
(tox-django) tox
Il est également possible de préciser un environnement particulier :
(tox-django) tox -e py34