2016-08-02 38 views
0

Ich versuche, Python-Unit-Tests auf unserem fortgesetzten Integration Server (Bamboo, läuft auf Debian Jessie) mit XML-Ausgabe, so dass wir Build als fehlschlagen oder Erfolg entsprechend den Testergebnissen markieren können . Ich kämpfe gerade mit der Tatsache, dass ich xmlrunner Modul gerade nicht installieren kann. Dies ist, was habe ichWie Python Unit Tests mit XML-Ausgabe

getan
sudo apt-get install python-xmlrunner 
python3 
>>> import xmlrunner 
ImportError: No module named 'xmlrunner' 

Also habe ich versucht pip aber es sagt Paket bereits

installiert ist
sudo pip install unittest-xml-reporting 
Requirement already satisfied (use --upgrade to upgrade): unittest-xml-reporting in /usr/lib/python2.7/dist-packages 

Btw kann ich dieses Modul importiert mit Python 2.7, die wahrscheinlich bedeutet, dass dieses python-xmlrunner Paket nur installiert ist für die Version 2.7.

Und ich betreibe meine Testklasse durch python3 -m unittest discover project_name mit Hauptverfahren gefällt das unittest.main(testRunner=xmlrunner.XMLTestRunner(output='test-reports'))

+0

verwende ich nehme an, Sie das klassische Unittest-Modul verwenden (es gibt Alternativen wie py.test). Ich weiß, dass es nicht genau Ihre Frage beantwortet, aber verwenden Sie ether nosetests oder py.test, da beide eine schöne Möglichkeit bieten, XML-Berichte auszugeben. [nosetest] (http://nose.readthedocs.io/en/latest/plugins/xunit.html) oder [py.test] (http://doc.pytest.org/en/latest/usage.html#creating -junitxml-format-files) – uphill

+0

Ja, ich weiß über sie, aber ich brauche keine anderen Features, also werde ich es jetzt einfach behalten :) –

Antwort

0

Sie sollten die Läufer installieren pip verwenden, und ich denke, das Paket nur xmlrunner genannt wird (aber vielleicht ist das Python 2.7)

pip install xmlrunner 

Noch besser wäre alles im Inneren virtualenv. Dann können Sie eine requirements.txt mit all Ihren Abhängigkeiten übergeben, und Sie müssen nicht sudo alles installieren. Dann können Sie eine beliebige Python-Version auswählen, die Sie von Ihrer globalen Installation isoliert haben.

Wenn Sie wnat zu überprüfen, ob es installiert ist, und welche Version, pip freeze