Skip to main content

docus

An installable pytest plugin that sends test sessions and results to a Docus test recorder service. It uses the pytest11 entry point, so existing test files do not need to change.

Install and run

pip install docus
TEST_RECORDER_URL=https://recorder.example.com pytest

The plugin stays inactive until TEST_RECORDER_URL or --recorder-url is provided. Set TEST_RECORDER_API_TOKEN when the service requires a bearer token. Set TEST_RECORDER_REPO to the canonical Git repository identifier; otherwise the plugin uses GITHUB_REPOSITORY or Git origin. The optional TEST_RECORDER_ACTOR overrides the current user.

The plugin records collected tests, test results, pytest phase durations, captured output, Git commit and branch, and a session ID. It sends a batch at session end. If delivery fails, pytest results are unchanged and the batch is saved under .test-recorder/spool. Retry with:

TEST_RECORDER_URL=https://recorder.example.com pydocus-resend

To keep a test identity across a pytest function rename, mark it with @pytest.mark.record_id("logical-name"). Parameter IDs should remain stable. Output and failure fields are capped at 64 KiB each; the batch indicates when truncation occurred.

The Docus service is developed at dooblai/docus. This package only depends on pytest and the Python standard library. Other languages can send the same JSON event format directly to the service.

Build and release to PyPI

  1. Install the package and run python testing_suite_client.py.
  2. Run python -m pip install build twine, python -m build, and python -m twine check dist/* from this repository.
  3. Create a GitHub environment named pypi in dooblai/pydocusclient.
  4. In PyPI, configure a pending trusted publisher for project name docus: owner dooblai, repository pydocusclient, workflow filename release.yml, environment pypi. This must match .github/workflows/release.yml exactly.
  5. Push a version tag such as v0.1.1, then publish a GitHub Release for that tag. The release workflow builds a wheel and source distribution and publishes them using GitHub OIDC. No long lived PyPI API token is needed.
  6. Verify with pip install docus in a fresh environment.

PyPI does not reserve a name when a pending publisher is configured. Check that docus is available immediately before the first release. For later releases, update the version in pyproject.toml and use a new matching GitHub tag. Choose and add a license before public distribution if you intend to grant reuse rights.

See the PyPI trusted publishing guide and Python packaging guide for the current publishing steps.

Metadata

Release files for docus 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for docus 0.1.1
File Size Uploaded Provenance Actions
docus-0.1.1.tar.gz 5.8 kB With provenance Details for docus-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for docus 0.1.1
File Interpreter ABI Platform Actions
docus-0.1.1-py3-none-any.whl Python 3 none any Details for docus-0.1.1-py3-none-any.whl

Total release size: 11.9 kB

Release files / docus-0.1.1.tar.gz

Download URL docus-0.1.1.tar.gz
Size 5.8 kB
Tags Source
SHA-256 checksum
How to use checksums
d4ba901f614418a83bfeac728e4713d0c6e1ef7ab0395e9302fb05b038b8ad1f
BLAKE2b-256 checksum
How to use checksums
d02bb330aad7457218ddf1d4ec868dfeda2d2f95490339a4c3cbe94ac4d08dbd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release files / docus-0.1.1-py3-none-any.whl

Download URL docus-0.1.1-py3-none-any.whl
Size 6.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f05a48167fbf95a8d39cbb160a8db920502064584bbe44efdd4a530d85e72901
BLAKE2b-256 checksum
How to use checksums
55d3a4777a459f61436157880d4154636931969704a10d68cd473e77fa7196e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Security for docus 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for docus-0.1.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page