Installation I tox verwenden möchten py.test an einem Projekt zu starten, das zusätzlich eine zusätzliche Einrichtung benötigt Pakete in die virtualenv zu installieren. Nach dem Erstellen des Virtualenv und dem Installieren von Abhängigkeiten müssen einige Befehle ausgeführt werden.Empfohlene Weise Befehle auszuführen, nachdem Abhängigkeiten in der virtualenv
Ich spreche speziell über einen Knoten und npm Umgebung mit nodeenv Einrichtung:
nodeenv --prebuilt -p
Ich sehe, dass tox mir einen benutzerdefinierten Befehl, indem Abhängigkeiten für die Installation verwendet bieten können install_command
in tox.ini
. Aber ich glaube nicht, dass dies das ist, was ich will, denn das ersetzt den Befehl (ich nehme an pip
) verwendet, um Abhängigkeiten zu installieren.
Ich dachte über eine py.test Befestigung mit Sitzung Umfang mit nodeenv Handhabung der Einrichtung, aber das scheint mir Hacky, wie ich dies nicht wollen passieren, wenn py.test direkt ausgeführt wird, nicht über tox.
Was ist der am wenigsten wahnsinnige Weg, dies zu erreichen?
Scheint der beste Weg zu sein. Ich werde nur überprüfen müssen, ob der Befehl bereits aufgerufen wurde, und ihn bei späteren Testläufen nicht erneut aufrufen. – Feuermurmel
Diese Antwort ist in Ordnung, aber es verfehlt auch das Zeichen. Ich möchte dasselbe tun - Installieren Sie den Knoten und seine Abhängigkeiten in einem Installationsschritt getrennt von dem Schritt, in dem die Tests ausgeführt werden. Diese Empfehlung wird nicht funktionieren, wenn Sie zum Beispiel "pytest --notest" ausführen - es wird die Python-Umgebung, aber nicht die Knotenumgebung installieren. Wahrscheinlich sollte tox "install_commands" anstelle von "install_command" enthalten, ähnlich wie CI-Umgebungen Installationsschritte haben, die den Testschritten vorausgehen. –
Ich bemerke, dass Sie Knoten Nodeenv über Python mit 'Python -m Nodeenv - Prebuilt-P 'statt Whitelisting nodeenv aufrufen können. –