2009-10-13 34 views
28

¿Cómo excluyo archivos enteros de los informes coverage.py?coverage.py: excluir archivos

Según la documentación, puede excluir el código haciendo coincidir líneas. Quiero excluir archivos completos, para que los informes no incluyan bibliotecas de terceros. ¿Me estoy perdiendo de algo? Se puede hacer?

+0

Si nadie le da una respuesta, Ned probablemente será alrededor pronto para aclarar las cosas - que es un habitual por aquí :) –

+5

Pongo ¡No sé si es algo bueno que sea tan predecible! :) –

Respuesta

41

Puede omitir módulos con el distintivo --omit. Toma una lista de prefijos de ruta separados por comas. Entonces, por ejemplo:

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

gracias Ned. ¿Cómo puedo hacerlo usando la API? – flybywire

+0

En la API, proporciona una lista de los módulos sobre los que desea informar, por lo que no hay mucho control conveniente allí. –

+2

@NedBatchelder Esto no funciona para mí, vea http://pastebin.com/YFg3fbmW. Tengo 'coverage.py, versión 3.5.2. http: // nedbatchelder.com/code/coverage'. ¿Sabes lo que estoy haciendo mal? –

10

Omitiendo algunos archivos que me funcionaron usando la cobertura API. Bueno, es el mismo tipo que sugirió Ned.

Aquí es cómo lo hice:

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

Cuestiones relacionadas