pytest-html-plus 0.3.9__tar.gz → 0.4.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/PKG-INFO +16 -8
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/README.md +14 -5
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pyproject.toml +8 -8
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/compute_report_metadata.py +3 -1
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/generate_html_report.py +1 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/utils.py +10 -5
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/LICENSE +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/__init__.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/compute_filter_counts.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/extract_link.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/json_merge.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/json_to_xml_converter.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/plugin.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/resolver_driver.py +0 -0
- {pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/send_email_report.py +0 -0
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
Metadata-Version: 2.3
|
|
2
2
|
Name: pytest-html-plus
|
|
3
|
-
Version: 0.
|
|
4
|
-
Summary:
|
|
3
|
+
Version: 0.4.1
|
|
4
|
+
Summary: Get started with rich pytest reports in under 3 seconds. Just install the plugin — no setup required. The simplest, fastest reporter for pytest.
|
|
5
5
|
License: MIT
|
|
6
6
|
Keywords: pytest,pytest-html-plus,pytest-plugin,html-test-report,beautiful-test-report,shareable-test-results,test-report,test-results,unit-test-report,functional-test-report,test-summary,reporting,python-testing,automated-testing,test-runner,report-generator,continuous-integration,ci-cd,github-actions,jenkins,pytest-html,pytest-report
|
|
7
|
-
Author:
|
|
7
|
+
Author: reporterplus
|
|
8
8
|
Requires-Python: >=3.9,<4.0
|
|
9
9
|
Classifier: License :: OSI Approved :: MIT License
|
|
10
10
|
Classifier: Programming Language :: Python :: 3
|
|
@@ -20,11 +20,13 @@ Project-URL: Source, https://github.com/reporterplus/pytest-html-plus
|
|
|
20
20
|
Project-URL: Tracker, https://github.com/reporterplus/pytest-html-plus/issues
|
|
21
21
|
Description-Content-Type: text/markdown
|
|
22
22
|
|
|
23
|
-
|
|
24
|
-
>
|
|
23
|
+
⚡ **Plug. Play. Debug without delay.**
|
|
24
|
+
> _Get started with rich pytest reports in under 3 seconds. Just install — no setup required. The simplest, fastest reporter for pytest._
|
|
25
25
|
|
|
26
26
|
## Get a self-contained, actionable, easy-to-read single page HTML unified reports summarizing all your test results — no hassle, just clarity. Detect **flaky tests**, and optionally send reports via email**. Works beautifully with or without `xdist`.
|
|
27
27
|
|
|
28
|
+
➡️ [View Demo Report](https://reporterplus.github.io/pytest-html-plus/)
|
|
29
|
+
|
|
28
30
|
[](https://pytest-html-plus.readthedocs.io/en/main/) [](https://pepy.tech/projects/pytest-html-plus)    [](https://github.com/reach2jeyan/pytest-report-plus/actions/workflows/unit-test.yml)
|
|
29
31
|
|
|
30
32
|
[](https://discord.gg/nUNZ9crf)
|
|
@@ -37,6 +39,13 @@ pip install pytest-html-plus
|
|
|
37
39
|
poetry add pytest-html-plus
|
|
38
40
|
```
|
|
39
41
|
|
|
42
|
+
## Pytest HTML Plus Action
|
|
43
|
+
|
|
44
|
+
If you don’t want the burden of installing pytest-html-plus manually and your project already manages dependencies with `requirements.txt` or Poetry, use this GitHub Action to generate rich pytest reports automatically.
|
|
45
|
+
|
|
46
|
+
[](https://github.com/marketplace/actions/pytest-html-plus-action)
|
|
47
|
+
[](https://pytest-html-plus.readthedocs.io/en/main/marketplace/usage.html)
|
|
48
|
+
|
|
40
49
|
## ✨ Features
|
|
41
50
|
|
|
42
51
|
#### 🧩 Seamless Combined XML Export to your favourite test management tools — No Plugins Needed
|
|
@@ -55,11 +64,11 @@ No need for custom marker definitions. Perfect for smarter filtering, reporting,
|
|
|
55
64
|
|
|
56
65
|

|
|
57
66
|
|
|
58
|
-
📦 Ship reports with provenance 📜 — full run metadata included 📋 and copy-ready.
|
|
67
|
+
#### 📦 Ship reports with provenance 📜 — full run metadata included 📋 and copy-ready.
|
|
59
68
|
|
|
60
69
|

|
|
61
70
|
|
|
62
|
-
📋⚡ Turn failure context into a single click — copy logs, traces, and errors instantly for your team.
|
|
71
|
+
#### 📋⚡ Turn failure context into a single click — copy logs, traces, and errors instantly for your team.
|
|
63
72
|
|
|
64
73
|

|
|
65
74
|
|
|
@@ -146,4 +155,3 @@ See the [contribution guide](https://pytest-html-plus.readthedocs.io/en/latest/c
|
|
|
146
155
|
## 📜 License
|
|
147
156
|
|
|
148
157
|
MIT
|
|
149
|
-
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
>
|
|
1
|
+
⚡ **Plug. Play. Debug without delay.**
|
|
2
|
+
> _Get started with rich pytest reports in under 3 seconds. Just install — no setup required. The simplest, fastest reporter for pytest._
|
|
3
3
|
|
|
4
4
|
## Get a self-contained, actionable, easy-to-read single page HTML unified reports summarizing all your test results — no hassle, just clarity. Detect **flaky tests**, and optionally send reports via email**. Works beautifully with or without `xdist`.
|
|
5
5
|
|
|
6
|
+
➡️ [View Demo Report](https://reporterplus.github.io/pytest-html-plus/)
|
|
7
|
+
|
|
6
8
|
[](https://pytest-html-plus.readthedocs.io/en/main/) [](https://pepy.tech/projects/pytest-html-plus)    [](https://github.com/reach2jeyan/pytest-report-plus/actions/workflows/unit-test.yml)
|
|
7
9
|
|
|
8
10
|
[](https://discord.gg/nUNZ9crf)
|
|
@@ -15,6 +17,13 @@ pip install pytest-html-plus
|
|
|
15
17
|
poetry add pytest-html-plus
|
|
16
18
|
```
|
|
17
19
|
|
|
20
|
+
## Pytest HTML Plus Action
|
|
21
|
+
|
|
22
|
+
If you don’t want the burden of installing pytest-html-plus manually and your project already manages dependencies with `requirements.txt` or Poetry, use this GitHub Action to generate rich pytest reports automatically.
|
|
23
|
+
|
|
24
|
+
[](https://github.com/marketplace/actions/pytest-html-plus-action)
|
|
25
|
+
[](https://pytest-html-plus.readthedocs.io/en/main/marketplace/usage.html)
|
|
26
|
+
|
|
18
27
|
## ✨ Features
|
|
19
28
|
|
|
20
29
|
#### 🧩 Seamless Combined XML Export to your favourite test management tools — No Plugins Needed
|
|
@@ -33,11 +42,11 @@ No need for custom marker definitions. Perfect for smarter filtering, reporting,
|
|
|
33
42
|
|
|
34
43
|

|
|
35
44
|
|
|
36
|
-
📦 Ship reports with provenance 📜 — full run metadata included 📋 and copy-ready.
|
|
45
|
+
#### 📦 Ship reports with provenance 📜 — full run metadata included 📋 and copy-ready.
|
|
37
46
|
|
|
38
47
|

|
|
39
48
|
|
|
40
|
-
📋⚡ Turn failure context into a single click — copy logs, traces, and errors instantly for your team.
|
|
49
|
+
#### 📋⚡ Turn failure context into a single click — copy logs, traces, and errors instantly for your team.
|
|
41
50
|
|
|
42
51
|

|
|
43
52
|
|
|
@@ -123,4 +132,4 @@ See the [contribution guide](https://pytest-html-plus.readthedocs.io/en/latest/c
|
|
|
123
132
|
|
|
124
133
|
## 📜 License
|
|
125
134
|
|
|
126
|
-
MIT
|
|
135
|
+
MIT
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
[tool.poetry]
|
|
2
2
|
name = "pytest-html-plus"
|
|
3
|
-
version = "0.
|
|
4
|
-
description = "
|
|
3
|
+
version = "0.4.1"
|
|
4
|
+
description = "Get started with rich pytest reports in under 3 seconds. Just install the plugin — no setup required. The simplest, fastest reporter for pytest."
|
|
5
5
|
readme = "README.md"
|
|
6
|
-
authors = ["
|
|
6
|
+
authors = ["reporterplus"]
|
|
7
7
|
license = "MIT"
|
|
8
8
|
packages = [{ include = "pytest_html_plus" }]
|
|
9
9
|
keywords = [
|
|
@@ -40,21 +40,21 @@ python = ">=3.9,<4.0"
|
|
|
40
40
|
yagmail = ">=0.15.293,<0.16.0"
|
|
41
41
|
keyring = ">=25.6.0,<26.0.0"
|
|
42
42
|
|
|
43
|
-
[tool.poetry.dev
|
|
43
|
+
[tool.poetry.group.dev.dependencies]
|
|
44
|
+
pytest-rerunfailures = "^15.1"
|
|
44
45
|
pytest = "^8.4.1"
|
|
45
46
|
pytest-cov = "^6.2.1"
|
|
46
47
|
playwright = "^1.53.0"
|
|
47
48
|
pytest-playwright = "^0.7.0"
|
|
48
49
|
pytest-xdist = "^3.8.0"
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
pytest-rerunfailures = "^15.1"
|
|
50
|
+
selenium = "^4.8.0"
|
|
51
|
+
webdriver-manager = "^3.8.5"
|
|
52
52
|
|
|
53
53
|
[build-system]
|
|
54
54
|
requires = ["poetry-core"]
|
|
55
55
|
build-backend = "poetry.core.masonry.api"
|
|
56
56
|
|
|
57
57
|
[tool.poetry.plugins."pytest11"]
|
|
58
|
-
|
|
58
|
+
pytest_html_plus = "pytest_html_plus.plugin"
|
|
59
59
|
|
|
60
60
|
|
{pytest_html_plus-0.3.9 → pytest_html_plus-0.4.1}/pytest_html_plus/compute_report_metadata.py
RENAMED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import json
|
|
2
2
|
from datetime import datetime
|
|
3
3
|
|
|
4
|
-
from pytest_html_plus.utils import is_main_worker, get_env_marker, get_git_branch, get_git_commit, get_report_title
|
|
4
|
+
from pytest_html_plus.utils import is_main_worker, get_env_marker, get_git_branch, get_git_commit, get_report_title, \
|
|
5
|
+
get_python_version
|
|
5
6
|
|
|
6
7
|
|
|
7
8
|
def write_plus_metadata_if_main_worker(config, report_path, output_path="plus_metadata.json"):
|
|
@@ -12,6 +13,7 @@ def write_plus_metadata_if_main_worker(config, report_path, output_path="plus_me
|
|
|
12
13
|
"environment": get_env_marker(config),
|
|
13
14
|
"branch": get_git_branch(),
|
|
14
15
|
"commit": get_git_commit(),
|
|
16
|
+
"python_version": get_python_version(),
|
|
15
17
|
"generated_at": datetime.now().isoformat()
|
|
16
18
|
}
|
|
17
19
|
with open(output_path, "w") as f:
|
|
@@ -553,6 +553,7 @@ class JSONReporter:
|
|
|
553
553
|
<tr><th>Branch</th><td>{self.metadata.get('branch', '')}</td></tr>
|
|
554
554
|
<tr><th>Commit</th><td>{self.metadata.get('commit', '')}</td></tr>
|
|
555
555
|
<tr><th>Generated At</th><td>{self.metadata.get('generated_at', '')}</td></tr>
|
|
556
|
+
<tr><th>Python version</th><td>{self.metadata.get('python_version', '')}</td></tr>
|
|
556
557
|
</table>
|
|
557
558
|
</div>
|
|
558
559
|
<div id="fullscreen-overlay" class="fullscreen-overlay" onclick="closeFullscreen()"></div>
|
|
@@ -1,4 +1,8 @@
|
|
|
1
|
+
import platform
|
|
1
2
|
import subprocess
|
|
3
|
+
import shutil
|
|
4
|
+
import os
|
|
5
|
+
|
|
2
6
|
|
|
3
7
|
def get_git_commit():
|
|
4
8
|
try:
|
|
@@ -62,11 +66,6 @@ def extract_error_block(error: str) -> str:
|
|
|
62
66
|
except Exception as e:
|
|
63
67
|
return f"[Error extracting error block: {e}]"
|
|
64
68
|
|
|
65
|
-
|
|
66
|
-
import shutil
|
|
67
|
-
import os
|
|
68
|
-
|
|
69
|
-
|
|
70
69
|
def zip_report_folder(report_path: str, output_zip: str = "report.zip") -> str:
|
|
71
70
|
"""Zips the given report folder into a zip file."""
|
|
72
71
|
if not os.path.exists(report_path):
|
|
@@ -90,3 +89,9 @@ def load_email_env(filepath="emailenv"):
|
|
|
90
89
|
|
|
91
90
|
def is_main_worker():
|
|
92
91
|
return os.environ.get("PYTEST_XDIST_WORKER") in (None, "gw0")
|
|
92
|
+
|
|
93
|
+
def get_python_version():
|
|
94
|
+
try:
|
|
95
|
+
return platform.python_version()
|
|
96
|
+
except Exception:
|
|
97
|
+
return "NA"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|