2015-10-23 4 views
14

Ich muss in der Lage sein, den Speicherort des Verzeichnisses .cache von pytest in die Umgebungsvariable WORKSPACE zu ändern. Durch Serverberechtigungen aus meiner Kontrolle, ich in diesen Fehler leite, weil mein Benutzer keine Berechtigung in dem Verzeichnis zu schreiben hat, wo die Tests aus laufen werden:Gibt es eine Möglichkeit, den Speicherort des Verzeichnisses .cache von pytest zu ändern?

py.error.EACCES: [Permission denied]: open('/path/to/restricted/directory/tests/.cache/v/cache/lastfailed', 'w') 

Gibt es einen Weg, um den Weg zu bringen des Verzeichnisses .cache in die Umgebungsvariable WORKSPACE?

Antwort

6

Sie können eine leere Datei pytest.ini in einem der übergeordneten Verzeichnissen Ihres Tests sind aufgerufen erstellen, dass die rootdir, in dem wird die .cache erstellt werden wird.

Siehe https://pytest.org/latest/customize.html

Es ist nicht ideal, aber es erlaubt eine gewisse Form der Anpassung.

16

können Sie die Erstellung von .cache/ verhindern, indem die „cacheprovider“ Plugin deaktivieren:

py.test -p no:cacheprovider ... 
1

Seit PyTest 3.2 gibt angeblich eine Befehlszeilenoption sein für die Position des .cache Verzeichnis festlegen: https://docs.pytest.org/en/latest/customize.html#confval-cache_dir

Mit PyTest 3.2.5 schlägt dies jedoch für mich mit einem unrecognized option: --cache_dir Fehler fehl. Wenn jemand in der Lage ist, das funktioniert zu bekommen, sprechen Sie bitte.

Verwandte Themen