Metadata-Version: 2.5
Name: ub-test-reports
Version: 1.0.0
Summary: Test results as needs without Sphinx: report parsers, the needs.json converter and the pytest plugin
Keywords: test-reports,junit,needs.json,sphinx-needs,pytest
Author-email: team useblocks <info@useblocks.com>
Requires-Python: >=3.11,<4
Description-Content-Type: text/x-rst
Classifier: Development Status :: 5 - Production/Stable
Classifier: Framework :: Pytest
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Software Development :: Testing
Classifier: Typing :: Typed
License-File: LICENSE
Requires-Dist: lxml
Requires-Dist: ub-project>=1.1.0,<2
Requires-Dist: pytest>=7.0 ; extra == "pytest"
Project-URL: Changelog, https://github.com/useblocks/sphinx-needs/blob/master/packages/ub-test-reports/docs/changelog.rst
Project-URL: Documentation, https://sphinx-test-reports.readthedocs.io/en/latest/
Project-URL: Issues, https://github.com/useblocks/sphinx-needs/issues
Project-URL: Repository, https://github.com/useblocks/sphinx-needs
Provides-Extra: pytest
Import-Name: ub_test_reports

ub-test-reports
===============

A tool for the sphinx-needs family -- not a Sphinx extension, and nothing to add to
``conf.py``.

It turns test results into needs without running Sphinx, and holds everything about test
reports that does not need a documentation build:

- **the parsers** -- JUnit XML (pytest, googletest, ctest, nose and friends) and
  tox-envreport style JSON;
- **the result vocabulary** -- one spelling for every outcome, whichever report it came
  from;
- **deterministic case IDs** -- the same case gets the same need ID in every run;
- **the** ``[test_reports]`` **model** of ``ubproject.toml``, read through ``ub-project``;
- **the converter** -- the ``test-reports build needs`` command, which writes a
  ``needs.json`` that sphinx-needs can import;
- **the pytest plugin** -- ``-p ub_test_reports.pytest_plugin``, which shapes the JUnit XML
  pytest writes (source locations, per-case properties for traceability).

Install the converter with::

    pip install ub-test-reports

and the pytest plugin with::

    pip install "ub-test-reports[pytest]"

To show the same reports inside a Sphinx documentation build, install the extension,
``sphinx-test-reports``, which depends on this package.

Documentation: the "Without Sphinx" section of https://sphinx-test-reports.readthedocs.io/en/latest/

