2010-10-14 8 views
24

Wie führen Sie nosetest von pycharm aus, um alle Komponententests auszuführen?Wie führst du nosetest von pycharm aus?

Ich weiß, dass pycharm python unittest und py.test unterstützt und dass sie nosetests in pycharm 1.1 richtig unterstützen werden, aber ich fragte mich, ob es eine Arbeit gab.

Antwort

28

In der aktuellen Version von Pycharm (2.6) sollte ein Kontextmenü "nosetests in ... ausführen" in einer Testdatei enthalten sein. Wenn dies fehlt, gehen Sie zu file->settings->Project Settings->python integrated tools und stellen Sie sicher, dass der Standard Test Runner Nosetests ist. Sie müssen natürlich Nosetests installiert haben - pycharm wird dies anbieten, wenn Sie dies nicht tun.

Dies hat eine Einschränkung. Wenn die fragliche Datei keine von unittest.TestCase abgeleitete Klasse hat, wird dies nicht automatisch angezeigt. Wenn Sie nose.tools oder einfache Behauptungen verwenden, wird dies nicht automatisch angeboten. Dies ist wahrscheinlich ein Fehler.

+0

Dies hat eine Einschränkung. Wenn die betreffende Datei unittest nicht importiert hat (sie verwendet nose.tools oder mock assert oder etwas anderes), bietet pycharm diese Option nicht automatisch an. –

+8

In PyCharm 4 finden Sie diese Option in Datei -> Einstellungen -> Tools -> Python Integrated Tools. Standardtest runner = "Nosetests". – Zymotik

+0

Zymotik - diese erste "Datei" ist in allen Versionen –

2

Wenn Sie ohne den grafischen Test-Runner leben können, können Sie einfach eine "Python Script" -Laufkonfiguration erstellen und die Tests ausführen, während Sie sie über die Befehlszeile ausführen.

Der einzige Weg, um Nasentests mit dem grafischen Test-Runner zu arbeiten, ist leider, dass ich helpers/pycharm/utrunner.py aus der PyCharm Distribution hacke.

+2

Hoffentlich, wenn pycharm 1.1 veröffentlicht wird, können Sie Ihre Antwort bearbeiten. :) –