Nase hat eine bug - Testnamen von Generatoren erstellt werden nicht zwischengespeichert, so scheint der Fehler, wie es im letzten Test passiert ist, nicht der eigentliche Test, wo es fehlgeschlagen ist. Ich habe um sie im Anschluss an die solution im Fehlerbericht Diskussion, aber es funktioniert nur für Namen auf stdout gezeigt, nicht in der XML-Bericht (--with-xunit)Ändern Namen von Tests von Nase Test Generatoren
from functools import partial, update_wrapper
def testGenerator():
for i in range(10):
func = partial(test)
# make decorator with_setup() work again
update_wrapper(func, test)
func.description = "nice test name %s" % i
yield func
def test():
pass
Der Ausgang der Nase ist wie erwartet, etwas wie
nice test name 0 ... ok
nice test name 1 ... ok
nice test name 2 ... ok
...
Aber die Testnamen in XML sind nur 'testGenerator'.
...<testcase classname="example" name="testGenerator" time="0.000" />...
Wie kann ich das ändern, so dass die personalisierte Testnamen sowohl auf stdout und XML-Ausgabe gezeigt werden?
Ich verwende nosetests Version 1.1.2 und Python 2.6.6
Ändern 'Funktions .__ name__' oder 'Funktions .__ doc__' funktioniert nicht. –
Wie wäre es, stattdessen eine Testsuite zu erstellen? – Apalala
@Apalala danke, das scheint, als könnte es lösen. Obwohl ich keine Informationen darüber finden kann, wie man dies in der Nase verwendet und wie es sich mit der Entdeckung von Nasenproben vermischt. Könnten Sie bitte ein Beispiel geben? –