What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Set BackstopJS’s report option to ["browser"], then run backstop test in your CI job. This creates the browser-readable visual report. If you also need a machine-readable report for the build system, enable "CI" as a separate report type; BackstopJS documents that output as JUnit, not HTML.
Configure the HTML report
In your BackstopJS configuration, select the browser reporter and set the output directory if you want to control where the HTML report is written:
As an Amazon Associate I earn from qualifying purchases.
{
"report": ["browser"],
"paths": {
"html_report": "backstop_data/html_report"
}
}
The example report path is relative to the job’s current working directory. BackstopJS allows the path to be changed in configuration, so make sure the CI step runs from the expected project directory. See the BackstopJS README for the configuration options and command behavior; details can vary with the version installed in your project.
Run the test and retain its report in CI
-
Install or otherwise make the project’s BackstopJS CLI available in the CI job, using the same version and configuration as the project’s visual tests.
#1 Best Overall
QWIK-Code Report Writing Template- report writing template for law enforcement
-
Run
backstop testfrom the project directory. The configured browser report is generated as part of the test run. -
Configure your CI provider’s artifact or publication step to collect
backstop_data/html_report, or the directory you set inpaths.html_report. The exact retention syntax depends on the CI provider; BackstopJS does not prescribe one universal artifact recipe. -
Use the process exit status to gate the job: BackstopJS returns
0when tests succeed and1when anything fails. Retain the report separately so a failed job still leaves a visual record to inspect.Recommended Free Tools
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Choose HTML, JUnit, or both
The report array selects report types. The browser report is intended for human visual inspection; the CI report is for test-system integration and is documented as JUnit by default. Enable both when developers need the visual report and the CI platform needs a test report.
Rank #2
| Configuration | What it produces | Use it for |
|---|---|---|
"report": ["browser"] |
Browser-readable visual HTML report | Reviewing screenshot differences |
"report": ["CI"] |
CI report; documented default format is JUnit | Build-system test integration |
"report": ["browser", "CI"] |
Both report types | Visual review and machine-readable results |
Here is a configuration that enables both and customizes the CI report settings:
{
"report": ["browser", "CI"],
"paths": {
"html_report": "backstop_data/html_report",
"ci_report": "backstop_data/ci_report"
},
"ci": {
"format": "junit",
"testReportFileName": "myproject-xunit",
"testSuiteName": "backstopJS"
}
}
The documented default CI report location is [backstopjs dir]/test/ci_report/xunit.xml. Set paths.ci_report to choose another directory, and use ci.format, ci.testReportFileName, and ci.testSuiteName to configure the format, filename, and suite name. The CI reporter does not replace the browser HTML reporter.
Open the latest report
Use backstop openReport to open the latest test run’s report. This is useful for reopening the output after a CI-only run or after a run that did not launch the browser reporter automatically. The report files still need to be retained or downloaded from CI if you want to inspect them on another machine.
For report features that depend on BackstopJS’s remote HTTP service, including approving scenarios or viewing scenario browser logs, start the service in another terminal before opening the report:
BACKSTOP_REMOTE_HTTP_PORT=3000 backstop remote --config=<your config>
Replace <your config> with the configuration path used by your project.
Troubleshoot missing or unusable reports
-
No HTML report appears: Check that the active configuration includes
"browser"inreport."CI"alone selects the CI report, whose documented default is JUnit. -
The report exists locally but not in CI artifacts: Check that the artifact collection step targets the configured
paths.html_reportdirectory and that its path is interpreted from the job’s working directory.PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchSpecial offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy. -
You cannot reopen a prior run’s report: Run
backstop openReportin the project context that contains the latest report output. In CI, download or publish the report directory before trying to open it elsewhere. -
The pipeline fails despite producing reports: A report’s presence does not mean the visual tests passed. BackstopJS returns exit status
1when anything fails; inspect the report and use the job’s exit handling to decide whether the failure should block the pipeline. -
Report controls such as approvals or browser logs are unavailable: Start the remote HTTP service with the documented command in another terminal, then open the report.
Or skip the browser setup
If your CI workflow also needs clean screenshots of live pages, ScreenshotNeo can return an image or PDF from one GET request. For example, this cURL request saves a WebP screenshot:
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
See the ScreenshotNeo documentation for API details. It removes cookie banners, newsletter popups, and chat widgets before the shot; bot checks, blank pages, and failed loads are not billed; and its MCP server lets AI agents take screenshots. The Free plan includes 1,000 screenshots a month with no card, and paid plans start at $5 for 3,000. Sign up for ScreenshotNeo free.
Frequently Asked Questions
Does `report: [“CI”]` create an HTML report?
No. BackstopJS documents the CI report’s default format as JUnit. Add `”browser”` to the `report` array for the browser-readable visual report.
Can a CI job generate both report types?
Yes. Set `”report”: [“browser”, “CI”]` and configure the HTML and CI output paths as needed.
Quick Recap
What does `backstop openReport` open?
It opens the latest test run’s report.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →




