Skip to main content

A pytest plugin for generating NUnit3 test result XML output

Project description

Build status PyPI version Python versions PyPI download month

A pytest plugin for generating NUnit3 test result XML output

This plugin is an early beta release!

Configuration

–nunit-xml

Use --nunit-xml=output.xml to create an NUnit3-compatible file called output.xml

Argument takes a path to the output file, either relative, or absolute.

–nunit-prefix

Use --nunit-prefix=example- to prefix all test case names with "example-"

Fixtures

The following fixtures are made available by this plugin.

record_nunit_property

Calling record_nunit_property(key: str, value: str) will result in Property tags being added to the test-case for the related node.

def test_basic(record_nunit_property):
    record_nunit_property("test", "value")
    assert 1 == 1

add_nunit_attachment

Add an attachment to a node test-case by calling the add_nunit_attachment(path: str, description: str) function with the filepath and a description.

def test_attachment(add_nunit_attachment):
    pth = os.path.join(os.path.abspath(os.path.dirname(__file__)), 'fixture.gif')
    add_nunit_attachment(path, "peanut butter jelly time")
    assert 1 == 1

Usage with Azure Pipelines

Add the following steps to your build job to publish the results to Azure Pipelines:

- script: "pip install pytest-nunit"

- script: |
    python -m pytest tests -v --nunit-xml=test-results.xml
  continueOnError: true

- task: PublishTestResults@2
  inputs:
    testResultsFormat: NUnit
    testResultsFiles: '**/test-results.xml'

Skipped Tests

Skipped tests will have the reason attribute (if provided) included in the results.

https://github.com/pytest-dev/pytest-nunit/raw/master/docs/source/_static/screen_skips.png

Attachments

Using the add_nunit_attachment fixture will render any attachments in the “attachments” tab inside the Tests console:

https://github.com/pytest-dev/pytest-nunit/raw/master/docs/source/_static/screen_attachments.png

Failures and xfails

Any failed tests, whether as xpass or xfail, will have the error output and comparison, as well as the failing line in the stack trace.

https://github.com/pytest-dev/pytest-nunit/raw/master/docs/source/_static/screen_fails.png

History

0.3.0 (15th July)

  • Added --nunit-prefix option.

0.2.1 (15th July)

  • First stable release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pytest-nunit-0.3.0.tar.gz (11.8 kB view details)

Uploaded Source

Built Distribution

pytest_nunit-0.3.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file pytest-nunit-0.3.0.tar.gz.

File metadata

  • Download URL: pytest-nunit-0.3.0.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.1

File hashes

Hashes for pytest-nunit-0.3.0.tar.gz
Algorithm Hash digest
SHA256 8c8c55848d121cd78fea8ce84bcea88787c683e7ffa0a9bf6ac76b681e0659c1
MD5 5daf7159674cf6c06771a197bcf276cd
BLAKE2b-256 0544763a881b5e4ae7a1fb5b76ddafe4bab12956acfb86b0996e5197ea94da51

See more details on using hashes here.

File details

Details for the file pytest_nunit-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: pytest_nunit-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.7.1

File hashes

Hashes for pytest_nunit-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 72b1fe6cbcdc0847e10e8c999c60e57d0fb05a5758affe034115e6006408d489
MD5 d15933b75573f8d0d73339904e49aaf4
BLAKE2b-256 b51f017b38518dbc17fb4e1d10d62eede60d913ab62573e1502efac85c72acfb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page