Usage¶
The pytest-html-plus VS Code extension is designed to help you navigate failed pytest tests directly inside the editor, using the JSON report generated by pytest-html-plus.
It does not run tests or generate reports. It consumes an existing report artifact.
Prerequisites¶
VS Code
pytest-html-plusinstalled in your test environmentA generated
final_report.jsonfile
Generating or Obtaining the Report¶
The VS Code extension consumes an existing final_report.json (by default in the project root, unless configured otherwise).file generated by pytest-html-plus.
You can obtain this report in either of the following ways:
Local test runs¶
Run pytest with pytest-html-plus enabled as usual. For example:
pytest
This produces a final_report.json file (by default in the project root, unless configured otherwise).
CI artifacts¶
If tests were executed in CI, you can download the CI artifact containing final_report.json (unless name configured otherwise). and place it anywhere in your workspace.
Once the file is available locally, configure the extension to point to it. The extension does not require the tests to have been run inside VS Code.
Installing the Extension¶
Install Pytest HTML Plus from the VS Code Marketplace.
Once installed, a ReporterPlus icon will appear in the Activity Bar.
Configuring the Report Path¶
If no report is configured, the sidebar will prompt you to configure one.
You can configure the report path in one of the following ways:
Browse and select
final_report.json(by default in the project root, unless configured otherwise).Enter the path manually
Auto-detect reports within the workspace (Detects only when json file exists with name
final_report.json)
The selected path is stored at the workspace level.
Viewing Failed Tests¶
Once configured, the sidebar displays:
A summary of total, passed, failed, and skipped tests
Failed tests grouped by file
Inline error context (when available)
Only failed tests are emphasized by default.
Refreshing the View¶
After re-running tests, click Refresh in the sidebar to reload the report.
The extension always reads the latest contents of final_report.json. (by default in the project root, unless configured otherwise).
Design Notes¶
The extension is report-driven, not runner-driven
It works regardless of where pytest was executed (local, CI, xdist, containers)
It complements the HTML report instead of replacing it
For detailed inspection, screenshots, and CI artifacts, continue using the HTML report generated by pytest-html-plus.