pytest-2.6.1: Fehlerbehebungen und neues xfail-Feature

pytest ist ein ausgereiftes Python-Testing-Tool mit mehr als 1100 Tests gegen sich selbst, die auf vielen verschiedenen Interpretern und Plattformen bestehen. Die Version 2.6.1 ist Drop-in-kompatibel mit 2.5.2 und behebt einige Regressionen, die mit 2.6.0 eingeführt wurden. Sie bringt auch ein kleines Feature für den xfail-Marker, der nun erwartete Exceptions erkennt. Siehe dazu den CHANGELOG unten.

Siehe Dokumentation unter

Wie üblich können Sie von PyPI aus upgraden über

pip install -U pytest

Danke an alle, die beigetragen haben, darunter

Floris Bruynooghe Bruno Oliveira Nicolas Delaby

Viel Spaß, holger krekel

Änderungen 2.6.1

  • Zeilennummern werden in der –verbose-Ausgabe nicht mehr angezeigt, die Ausgabe ist nun rein die nodeid. Die Zeilennummer wird weiterhin in Fehlerberichten angezeigt. Danke an Floris Bruynooghe.

  • Behebt Issue 437, bei dem die Assertion-Rewriting dazu führen konnte, dass pytest-xdist-Worker-Nodes unterschiedliche Tests sammelten. Danke an Bruno Oliveira.

  • Behebt Issue 555: Fügt das Attribut "errors" zu capture-streams hinzu, um einige distutils und möglicherweise andere Codes, die auf sys.stdout.errors zugreifen, zufrieden zu stellen.

  • Behebt Issue 547: capsys/capfd funktionieren auch, wenn die Ausgabenerfassung ("-s") deaktiviert ist.

  • Behebt Issue 170: Erlaubt pytest.mark.xfail(...) die Angabe erwarteter Exceptions über ein optionales Argument "raises=EXC", wobei EXC eine einzelne Exception oder ein Tupel von Exception-Klassen sein kann. Danke an David Mohr für den vollständigen PR.

  • Behebt die Integration von pytest mit dem unittest.mock.patch-Decorator, wenn dieser das Argument "new" verwendet. Danke an Nicolas Delaby für den Test und PR.

  • Behebt ein Problem bei der Erkennung von conftest-Dateien, wenn die Argumente "::" Node-ID-Spezifikationen enthalten (kopiert aus der "-v"-Ausgabe).

  • Behebt Issue 544, indem "@NUM" nur am Ende von "::" getrennten Teilen entfernt wird und nur, wenn der Teil eine ".py"-Erweiterung hat.

  • Verwendet nicht mehr den py.std Import-Helfer, sondern importiert Dinge direkt. Danke an Bruno Oliveira.