Interface Tracing

All Known Implementing Classes:
TracingImpl

public interface Tracing
API for collecting and saving Playwright traces. Playwright traces can be opened in Trace Viewer after Playwright script runs.

Start recording a trace before performing actions. At the end, stop tracing and save it to a file.


 Browser browser = chromium.launch();
 BrowserContext context = browser.newContext();
 context.tracing().start(new Tracing.StartOptions()
   .setScreenshots(true)
   .setSnapshots(true));
 Page page = context.newPage();
 page.navigate("https://playwright.dev");
 context.tracing().stop(new Tracing.StopOptions()
   .setPath(Paths.get("trace.zip")));
 
  • Method Details

    • start

      default void start()
      Start tracing.

      **Usage**

      
       context.tracing().start(new Tracing.StartOptions()
         .setScreenshots(true)
         .setSnapshots(true));
       Page page = context.newPage();
       page.navigate("https://playwright.dev");
       context.tracing().stop(new Tracing.StopOptions()
         .setPath(Paths.get("trace.zip")));
       
      Since:
      v1.12
    • start

      void start(Tracing.StartOptions options)
      Start tracing.

      **Usage**

      
       context.tracing().start(new Tracing.StartOptions()
         .setScreenshots(true)
         .setSnapshots(true));
       Page page = context.newPage();
       page.navigate("https://playwright.dev");
       context.tracing().stop(new Tracing.StopOptions()
         .setPath(Paths.get("trace.zip")));
       
      Since:
      v1.12
    • startChunk

      default void startChunk()
      Start a new trace chunk. If you'd like to record multiple traces on the same BrowserContext, use Tracing.start() once, and then create multiple trace chunks with Tracing.startChunk() and Tracing.stopChunk().

      **Usage**

      
       context.tracing().start(new Tracing.StartOptions()
         .setScreenshots(true)
         .setSnapshots(true));
       Page page = context.newPage();
       page.navigate("https://playwright.dev");
      
       context.tracing().startChunk();
       page.getByText("Get Started").click();
       // Everything between startChunk and stopChunk will be recorded in the trace.
       context.tracing().stopChunk(new Tracing.StopChunkOptions()
         .setPath(Paths.get("trace1.zip")));
      
       context.tracing().startChunk();
       page.navigate("http://example.com");
       // Save a second trace file with different actions.
       context.tracing().stopChunk(new Tracing.StopChunkOptions()
         .setPath(Paths.get("trace2.zip")));
       
      Since:
      v1.15
    • startChunk

      void startChunk(Tracing.StartChunkOptions options)
      Start a new trace chunk. If you'd like to record multiple traces on the same BrowserContext, use Tracing.start() once, and then create multiple trace chunks with Tracing.startChunk() and Tracing.stopChunk().

      **Usage**

      
       context.tracing().start(new Tracing.StartOptions()
         .setScreenshots(true)
         .setSnapshots(true));
       Page page = context.newPage();
       page.navigate("https://playwright.dev");
      
       context.tracing().startChunk();
       page.getByText("Get Started").click();
       // Everything between startChunk and stopChunk will be recorded in the trace.
       context.tracing().stopChunk(new Tracing.StopChunkOptions()
         .setPath(Paths.get("trace1.zip")));
      
       context.tracing().startChunk();
       page.navigate("http://example.com");
       // Save a second trace file with different actions.
       context.tracing().stopChunk(new Tracing.StopChunkOptions()
         .setPath(Paths.get("trace2.zip")));
       
      Since:
      v1.15
    • stop

      default void stop()
      Stop tracing.
      Since:
      v1.12
    • stop

      void stop(Tracing.StopOptions options)
      Stop tracing.
      Since:
      v1.12
    • stopChunk

      default void stopChunk()
      Stop the trace chunk. See Tracing.startChunk() for more details about multiple trace chunks.
      Since:
      v1.15
    • stopChunk

      void stopChunk(Tracing.StopChunkOptions options)
      Stop the trace chunk. See Tracing.startChunk() for more details about multiple trace chunks.
      Since:
      v1.15