Ich habe versucht, die norecursedirs
Option in setup.cfg zu verwenden, um py.test anzuweisen, keine Tests aus bestimmten Verzeichnissen zu sammeln, aber es scheint, dass dies ignoriert wird.
[tool:pytest]
norecursedirs=lib/third
Wenn ich renne, py.test
sehe ich, wie es Tests von innen bekommt lib/third
!
python
unit-testing
pytest
Sorin
quelle
quelle
py.test
undpytest
beide Lauftests haben und verschiedene Bestien sind. Seltsam, aberpytest
es schlägt fehl, weil die Ausschlüsse von nicht geladen werden[pytest]
.pytest
ist von logilab. Du willstpy.test
.nosecuredirs=lib/third/*
[pytest] norecursedirs = resources
inpytest.ini
tut einen Trick 💪!Antworten:
py.test --ignore=somedir
arbeitete für michquelle
--ignore
kann mehrfach angegeben werden, um mehrere Verzeichnisse zu ignorieren-k
Option verwenden, wie eine andere Antwort unten zeigt. Siehe "Ausführen von Tests anhand von Schlüsselwortausdrücken" auf docs.pytest.org/en/latest/… . Auch hier können Markierungen hilfreich sein.-k "not slow"
--ignore-glob
Testdateipfade auf dem Unix-Shell Platzhalter Basis zu ignorieren. ZB--ignore-glob=**/sandbox/*
werden alle Dateien in einemsandbox
Ordner ignoriert .Wenn Sie mehrere Verzeichnisse mit unterschiedlichen Eltern haben, können Sie verschiedene
--ignore
Parameter angeben :py.test --ignore=somedir --ignore=otherdir --ignore=etcdir
quelle
Ich habe das Rätsel gelöst: Wenn ein pytest-Abschnitt in einer der möglichen Konfigurationsdateien (
pytest.ini
,tox.ini
undsetup.cfg
) gefunden wird, sucht pytest nicht nach anderen. Stellen Sie daher sicher, dass Sie die py.test-Optionen in einer einzelnen Datei definieren.Ich würde vorschlagen, zu verwenden
setup.cfg
.quelle
setup.cfg
? Die aktuelle Dokumentation scheint die anderen beiden.ini
Datei verwenden möchten, Sie sie mit angeben müssenpytest -c pytest.ini
. Aus irgendeinem Grund wurdensetup.cfg
Inhalte automatisch aufgenommen.Sie können verwenden
py.test -k 'not third'
das schließt alle 'dritten' Verzeichnisinhalte aus.
quelle
norecursedirs
sollte arbeiten. Überprüfen Sie, ob Sie eine pytest.ini oder andere setup.cfg-Dateien haben. Wie rufst du anpy.test
?quelle
setup.cfg
die richtigen[pytest]
und norecorsedirs drin, aber es scheint ignoriert zu werden, und stattdessen wird nach allen Dateien gesucht.In meinem Fall war das Problem der fehlende Platzhalter. Folgendes funktioniert für mich:
während einfach
norecursedirs = subpath
nicht.quelle
Wenn Sie setup.cfg verwenden, müssen Sie
[tool:pytest]
gemäß http://doc.pytest.org/en/latest/example/pythoncollection.html verwendenquelle
Zur Nutzung
pytest.ini
(was empfohlen wird, es sei denn , Sie verwenden ,tox
in welchem Falltox.ini
würde Sinn machen), Anrufpytest
mitpytest -c pytest.ini
.Um meine Probe zu verhindern
not_me_1.py
undnot_me_2.py
von zu prüfenden oder linted, meinepytest.ini
ist wie folgt:quelle