Как да изведа XML покритие с тестове на носа?

Опитвам се да изведа XML покритието на моите носови тестове, така че да се показват на Хъдсън. Редът, който изпълнявам, е:

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

Виждам изхода за покритие в конзолата, но няма xml файл, съдържащ данните за покритието. Как мога да го накарам да изведе xml на покритието?


person Cuga    schedule 21.01.2011    source източник


Отговори (2)


След като изпълните командата nosetests, в директорията ще има файл с данни .coverage. Ако след това стартирате coverage xml, той ще създаде XML файл, съвместим с Cobertura, от файла .coverage.

person Ned Batchelder    schedule 21.01.2011
comment
С кой пакет го правиш? Инсталирах покритие с pip и се оплаква, че xml модулът не съществува - person hithwen; 25.02.2014
comment
@hithwen, когато е инсталиран python-coverage, можете да го изпълните като python -m coverage xml --include="mypackage*" - person ezdazuzena; 07.08.2014

Има плъгин, написан за nosetests, който да прави точно това.

Просто трябва да добавите --with-xcoverage, след като този пакет бъде инсталиран. Може да се намери на:

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

person Jeremy Cunningham    schedule 25.01.2011
comment
Благодаря. Това работи ли по-добре от другия отговор? Другият начин има тенденция да изпълнява показатели за покритие през целия код на моя PYTHONPATH, дори ако му кажа да прави всичко в моята папка „tests“. - person Cuga; 26.01.2011
comment
Опцията, която дадох, е наистина същата, но се прави директно чрез плъгин за нос. Добавете опцията „--cover-package=PACKAGE_NAME“, за да ограничите какъв код е включен в покритието. - person Jeremy Cunningham; 02.02.2011