Skip to content

terrameijar/pytest-nunit

 
 

Repository files navigation

pytest-nunit

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.

image

Attachments

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

image

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.

image

History

0.3.0 (15th July)

  • Added --nunit-prefix option.

0.2.1 (15th July)

  • First stable release

About

An Nunit output plugin for Pytest

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%