2009-10-13 21 views
28

Comment exclure des fichiers entiers des rapports coverage.py? Selon la documentation, vous pouvez exclure le code en faisant correspondre les lignes. Je souhaite exclure des fichiers entiers, afin que les rapports n'incluent pas les bibliothèques tierces. Est-ce que je manque quelque chose? Peut-il être fait?coverage.py: exclure les fichiers

+0

Si personne d'autre vous donne une réponse, Ned sera probablement autour bientôt éclaircir les choses - il est un habitué ici :) Je –

+5

don Ne sais pas si c'est une bonne chose que je sois si prévisible! :) –

Répondre

41

Vous pouvez omettre des modules avec l'indicateur --omit. Il prend une liste de préfixes de chemins séparés par des virgules. Ainsi, par exemple:

coverage run my_program.py 
coverage report --omit=path/to/3rdparty 
+0

merci Ned. Comment puis-je le faire en utilisant l'API? – flybywire

+0

Dans l'API, vous fournissez une liste des modules sur lesquels vous souhaitez créer un rapport, ce qui vous permet de ne pas avoir beaucoup de contrôle pratique. –

+2

@NedBatchelder Cela ne fonctionne pas pour moi, voir http://pastebin.com/YFg3fbmW. J'ai 'coverage.py, version 3.5.2. http: // nedbatchelder.com/code/coverage'. Savez-vous ce que je fais mal? –

10

Omettre certains fichiers travaillés pour moi en utilisant l'API de couverture. Eh bien c'est le même genre que ce que Ned a suggéré.

Ici, il est ainsi que je l'ai fait:

cov = coverage.coverage(omit='/usr/lib/python2.6/site-packages/*')

Questions connexes