2012-06-20 2 views
35

J'ai essayé d'utiliser l'option norecursedirs à l'intérieur de setup.cfg pour dire à py.test de ne pas collecter des tests de certains répertoires mais il semble qu'il l'ignore.Comment dire à py.test d'ignorer certains répertoires?

[tool:pytest] 
norecursedirs=lib/third 

Quand je lance py.test je ne vois comment ça passer des tests à l'intérieur lib/third!

+0

Il semble que j'ai "py.test" et "pytest" tous les deux des tests d'exécution et étant des bêtes différentes. Étrange mais 'pytest' est celui qui échoue parce qu'il ne charge pas les exclusions de' [pytest] '. – sorin

+1

'pytest' vient de logilab. Vous voulez 'py.test'. – ecatmur

+0

essayez également de faire 'nosecuredirs = lib/third/*' – intelis

Répondre

14

Je résolu le mystère: Si une section pytest se trouve dans l'un des fichiers de configuration possibles (pytest.ini, tox.ini et setup.cfg), pytest ne cherchera pas les autres alors assurez-vous de définir les options py.test en un seul fichier.

Je suggère d'utiliser setup.cfg.

9

norecursedirs devrait fonctionner. Vérifiez si vous avez un pytest.ini ou d'autres fichiers setup.cfg. Comment invoquez-vous py.test?

+0

J'ai le fichier 'setup.cfg' avec le bon [pytest]' et norecorsedirs à l'intérieur, mais il semble être ignoré, et à la place il cherchera tous les fichiers. – sorin

9

Vous pouvez utiliser

py.test -k 'not third' 

qui exclut tout le contenu du répertoire 'tiers'.

13

py.test --ignore=somedir a fonctionné pour moi

Questions connexes