Skip to main content

A test runner which can output an XML report compatible with JUnit and Jenkins

Project description

Introduction

This package provides an extension to the test runner to the one that ships with zope.testrunner, as well as a buildout recipe based on zc.recipe.testrunner to install a test script for this test runner.

The test runner is identical to the one in zope.testrunner, but it is capable of writing test reports in the XML format output by JUnit/Ant. This allows the test results to be analysed by tools such as the Jenkins continuous integration server.

Code repository

https://github.com/collective/collective.xmltestreport

Usage

In your buildout, add a part like this:

[buildout]
parts =
    ...
    test

...

[test]
recipe = collective.xmltestreport
eggs =
    my.package
defaults = ['--auto-color', '--auto-progress']

The recipe accepts the same options as zc.recipe.testrunner, so look at its documentation for details.

When buildout is run, you should have a script in bin/test and a directory parts/test.

To run the tests, use the bin/test script. If you pass the --xml option, test reports will be written to parts/test/testreports directory:

$ bin/test --xml -s my.package

Use bin/test --help for a full list of options.

If you are using Jenkins, you can now configure the build to publish JUnit test reports for <buildoutdir>/parts/test/testreports/*.xml.

Changelog

2.0.2 (2020-03-09)

Bug fixes:

2.0.1 (2019-02-02)

Bug fixes:

  • Fix environment option. The key was used as the value.

2.0.0 (2018-10-31)

Breaking changes:

  • Add compatibility with Python 2 and Python 3. [gforcada]

  • Switch from optparse to argparse to work with zope.testrunner >= 4.9.0 [pbauer]

  • Drop python 2.6 dependency. [gforcada]

Bug fixes:

  • Clean up the code. [gforcada]

1.3.4 (2017-02-02)

Fixes:

1.3.3 (2015-09-09)

  • Dependency to z3c.recipe.scripts declared but it was nowhere used. Removed dependency. This makes it work with newer zc.buildout again. Fixes #10 [jensens]

1.3.2 (2015-04-25)

  • Fix error on utf-8 error string. [bloodbare]

  • Fix encoding problem in python 3. [cedricmessiant]

1.3.1 (2013-10-03)

  • Make sure errors in layer teardown don’t prevent the test report from getting written. [davisagli]

1.3.0 (2013-04-29)

  • Revert “Exclude system site-packages from tests’ sys.path”. This commit changed the API/output of collective.xmltestreport in a minor version without mentioning. This essentially broke all Jenkins jobs out there including all Plone coredev jobs and all the packages/code that relies on that output. [timo]

1.2.8 (2012-08-19)

  • Add missing dependency to z3c.recipe.scripts [ggozad]

1.2.7 (2012-08-19)

  • Exclude system site-packages from tests’ sys.path’ [Andrey Lebedev]

1.2.6 (2012-06-06)

  • Fix import errors problem (TypeError) introduced in 1.2.5. [jone]

1.2.5 (2012-06-06)

  • Handle startup failures (import errors) and expose them in the testresults. [jone]

1.2.4 (2011-12-04)

  • Fix brown-bag release 1.2.3 that was missing CHANGES.txt etc.

1.2.3 (2011-12-02)

  • Only depend on elementtree for Python < 2.5.

1.2.2 (2011-05-30)

  • Fixed OSError in formatter which could occur when a test case modifies the current working directory to a directory that gets removed during the test. In such cases we fall back to the working directory as it was in the beginning of the tests. [dokai]

1.2.1 (2011-02-03)

  • Fixed IndexError in formatter which could occur when the path of the current working directory was part of the path + file name of the doctest file but shorter.

1.2 (2011-01-27)

  • Added support for Manuel tests. It gets activated when the package under test has tests using manuel and this way depends on manuel. [icemac]

1.1 (2011-01-20)

  • Require zope.testrunner and remove support for zope.testing 3.7. [hannosch]

  • Added support for zope.testrunner while retaining support for the older zope.testing.testrunner. [hannosch]

  • No longer use the deprecated zope.testing.doctest. [hannosch]

  • Distribution metadata cleanup. [hannosch]

  • Use built-in xml.etree in favor of elementree in Python 2.5+ and added missing dependency on zc.recipe.egg. [multani]

1.0b3 (2010-06-07)

  • Rename the -x option --xml. This is necessary by zope.testing now uses the -x option for something else. :-(

1.0b2 (2009-11-08)

  • Maintain compatibility with zope.testing 3.7.

1.0b1 (2009-11-07)

  • Initial 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

collective.xmltestreport-2.0.2.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

collective.xmltestreport-2.0.2-py2.py3-none-any.whl (11.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file collective.xmltestreport-2.0.2.tar.gz.

File metadata

  • Download URL: collective.xmltestreport-2.0.2.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/2.7.17

File hashes

Hashes for collective.xmltestreport-2.0.2.tar.gz
Algorithm Hash digest
SHA256 2062a7a607952cfb9fecb5811a3d07748f3d1b4bc239812903b582ca65c6bf37
MD5 2c20eac27fa87f6b5c6d19f58d4c39ba
BLAKE2b-256 5e2b466fe0c3cae9ff4c886c056b639da4eafa391d9673d3f980705e99c37eda

See more details on using hashes here.

File details

Details for the file collective.xmltestreport-2.0.2-py2.py3-none-any.whl.

File metadata

  • Download URL: collective.xmltestreport-2.0.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/42.0.2 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/2.7.17

File hashes

Hashes for collective.xmltestreport-2.0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 de6ffcff798a7f1e8a0f3380728386d1ac9220d7ab233b7267bd7e172cfc10bd
MD5 a9b599cb987b9e15df6fbe2a1c9cc8bb
BLAKE2b-256 2c4002ea5cefd7a0c1639339cee9ebff8e2a9827bee39b8112e16cdb94717c90

See more details on using hashes here.

Supported by

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