Describe tox.ini file
This commit is contained in:
parent
a82558a141
commit
fdea1e535c
|
@ -321,13 +321,28 @@ Ceci vous affichera non seulement la couverture de code estimée, et générera
|
|||
|
||||
==== Matrice de compatibilité
|
||||
|
||||
Décrire un fichier tox.ini
|
||||
L'intérêt de la matrice de compatibilité consiste à spécifier un ensemble de plusieurs versions d'un même interpréteur (ici, Python), afin de s'assurer que votre application continue à fonctionner. Nous sommes donc un cran plus haut que la spécification des versions des librairies, puisque nous nous situons directement au niveau de l'interpréteur.
|
||||
|
||||
[source,bash]
|
||||
L'outil le plus connu est https://tox.readthedocs.io/en/latest/[Tox], qui consiste en un outil basé sur virtualenv et qui permet:
|
||||
|
||||
. de vérifier que votre application s'installe correctement avec différentes versions de Python et d'interpréteurs
|
||||
. de démarrer des tests parmi ces différents environnements
|
||||
|
||||
[source,ini]
|
||||
----
|
||||
$ touch tox.ini
|
||||
# content of: tox.ini , put in same dir as setup.py
|
||||
[tox]
|
||||
envlist = py27,py36
|
||||
|
||||
[testenv]
|
||||
deps =
|
||||
-r requirements/dev.txt
|
||||
commands =
|
||||
pytest
|
||||
----
|
||||
|
||||
Démarrez ensuite la commande `tox`, pour démarrer la commande `pytest` sur les environnements Python 2.7 et 3.6, après avoir installé nos dépendances présentes dans le fichier `requirements/dev.txt`.
|
||||
|
||||
|
||||
==== Configuration globale
|
||||
|
||||
|
@ -339,11 +354,17 @@ $ touch setup.cfg
|
|||
----
|
||||
|
||||
|
||||
==== Dockerfile
|
||||
|
||||
|
||||
|
||||
|
||||
==== Makefile
|
||||
|
||||
Pour gagner un peu de temps, n'hésitez pas à créer un fichier `Makefile` que vous placerez à la racine du projet. L'exemple ci-dessous permettra, grâce à la commande `make coverage`, d'arriver au même résultat que ci-dessus:
|
||||
Pour gagner un peu de temps, n'hésitez pas à créer un fichier `Makefile` que vous placerez à la racine du projet.
|
||||
L'exemple ci-dessous permettra, grâce à la commande `make coverage`, d'arriver au même résultat que ci-dessus:
|
||||
|
||||
[source,makefile]
|
||||
[source,text]
|
||||
----
|
||||
# Makefile for gwift
|
||||
#
|
||||
|
@ -363,6 +384,8 @@ coverage:
|
|||
@echo "Testing of coverage in the sources finished."
|
||||
----
|
||||
|
||||
Pour la petite histoire, `make` peu sembler un peu désuet, mais reste extrêmement efficace.
|
||||
|
||||
|
||||
==== The Zen of Python
|
||||
|
||||
|
|
Loading…
Reference in New Issue