2011-01-21 12 views
13

Estoy tratando de dar salida a la cobertura XML de mis nosetest para que aparezcan en Hudson. La línea que estoy de ejecución es:¿Cómo generar cobertura XML con nosetests?

nosetests --with-gae -v --all-modules --with-xunit --with-coverage 

veo la salida de la cobertura en la consola, pero no hay archivo XML que contiene los datos de cobertura. ¿Cómo puedo obtener la salida xml?

Respuesta

21

Una vez que haya ejecutado el comando nosetests, habrá un archivo de datos .coverage en el directorio. Si luego ejecuta coverage xml, creará un archivo XML compatible con Cobertura del archivo .coverage.

+0

¡Muchas gracias! – Cuga

+0

¿Con qué paquete haces eso? He instalado una cobertura con pip y se queja de que el módulo xml no existe – hithwen

+0

@hithwen cuando se instala python-coverage, puede ejecutarlo como 'python -m coverage xml --include =" mypackage * "' – ezdazuzena

7

Hay un complemento escrito para nosetests para hacer esto.

Solo tiene que agregar --with-xcoverage una vez que este paquete está instalado. Se puede encontrar en:

https://github.com/cmheisel/nose-xcover

+0

Gracias. ¿Funciona esto mejor que la otra respuesta? La otra manera tiende a ejecutar métricas de cobertura a través de todo el código en mi PYTHONPATH, incluso si le digo que simplemente haga todo en mi carpeta 'tests'. – Cuga

+1

La opción que di es la misma pero se hace directamente a través de un plugin de nariz. Agregue la opción '--cover-package = PACKAGE_NAME' para limitar el código que se incluye en la cobertura. –

Cuestiones relacionadas