Skip to main content

Trace viewer

Introduction

Playwright Trace Viewer is a GUI tool that lets you explore recorded Playwright traces of your tests meaning you can go back and forward though each action of your test and visually see what was happening during each action.

You will learn

  • How to record a trace
  • How to open the HTML report
  • How to open the trace viewer

Recording a trace

Traces can be recorded by running your tests with the --tracing flag.

pytest --tracing on

Options for tracing are:

  • on: Record trace for each test
  • off: Do not record trace. (default)
  • retain-on-failure: Record trace for each test, but remove all traces from successful test runs.

This will record the trace and place it into the file named trace.zip in your test-results directory.

If you are not using Pytest, click here to learn how to record traces.
browser = chromium.launch()
context = browser.new_context()

# Start tracing before creating / navigating a page.
context.tracing.start(screenshots=True, snapshots=True, sources=True)

page = context.new_page()
page.goto("https://playwright.dev")

# Stop tracing and export it into a zip archive.
context.tracing.stop(path = "trace.zip")

Opening the trace

You can open the saved trace using the Playwright CLI or in your browser on trace.playwright.dev. Make sure to add the full path to where your trace.zip file is located. This should include the test-results directory followed by the test name and then trace.zip.

playwright show-trace trace.zip

Viewing the trace

View traces of your test by clicking through each action or hovering using the timeline and see the state of the page before and after the action. Inspect the log, source and network during each step of the test. The trace viewer creates a DOM snapshot so you can fully interact with it, open devtools etc.

playwright trace viewer

To learn more check out our detailed guide on Trace Viewer.

What's next