No project description provided
Project description
pytest-publish
pytest-publish is a simple pytest plugin for publishing test results mid-session.
Useful for live applications running on top of pytest (UI, logstash, etc).
Usage
There are 2 switches which can be turned on, each run every time a test has finished running:
--publish <url>
to publish JSON reports to REST API.--pubdir <path>
to write results to filesystem.
--publish
Run test like this:
$ pytest --publish http://localhost:7777/test-update
On each test result, an HTTP POST request with the following JSON data will be submitted:
# from pytest_publish.py
@dataclass_json
@dataclass
class TestResult:
@dataclass_json
@dataclass
class ExcInfo:
type: str
value: str
traceback: list[str]
type: str
result: str # "pass", "skip", "fail"
nodeid: str
start_time: float
stop_time: float
duration: float
stdout: str
stderr: str
log: str
xdist_dist: str | None # only with xdist
xdist_worker: str | None # only with xdist
xdist_scope: str | None # only with xdist
excinfo: ExcInfo | None = None # only if "skip" or "fail"
--pubdir
Run test like this:
$ pytest --pubdir /tmp/a
On each test result, the following directory tree will be created:
/tmp/a
/tmp/a/test_a
/tmp/a/test_a/.lock
/tmp/a/test_a/count
/tmp/a/test_a/0.pass # <index>.<result>
/tmp/a/test_a/0.pass/brief.txt # textual description of result
/tmp/a/test_a/0.pass/result.json # same data as --publish
/tmp/a/test_a/0.pass/exception.txt # only if "skip" or "fail"
/tmp/a/test_a/0.pass/stdout.txt # only if any stdout
/tmp/a/test_a/0.pass/stderr.txt # only if any stderr
/tmp/a/test_a/0.pass/log.txt # only if any logs
NOTE: If xdist's --dist loadgroup
is run with xdist, the directory tree will look like this:
/tmp/a/<scope>
/tmp/a/<scope>/<test_name>
/tmp/a/<scope>/<test_name>/count
Notice the addition of the <scope>
to the directory tree above.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pytest_publish-1.2.0.tar.gz
(3.7 kB
view hashes)
Built Distribution
Close
Hashes for pytest_publish-1.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7a86b0912b038fa470abf006ad3655f134bb0244097c2ff0d25ba65df5b9d1a |
|
MD5 | 8b5f0f85900c8047f6c397ef148a4a89 |
|
BLAKE2b-256 | edb5241ac7c5ec5297ac388648c276054f33e3ba95367338510569a8323a6288 |