getting-started

Getting started

This walks through launching a browser, opening a page, navigating to a local file, and tearing everything down.

Start the driver

WWW::Playwright.start spawns the Node sidecar and returns a driver handle.

use WWW::Playwright;

my $playwright = WWW::Playwright.start;

Launch a browser

launch starts Chromium. It is headless by default; pass :!headless to see a window.

my $browser = $playwright.launch;          # headless
# my $browser = $playwright.launch(:!headless);

Open a context and a page

A context is an isolated browser session, the right boundary for one test. Each context owns its own pages.

my $context = $browser.new-context;
my $page    = $context.new-page;

Navigate

goto returns the HTTP status of the navigation response.

my $status = $page.goto('file:///path/to/hello.html');
say $status;   # 200

Tear down

Close from the inside out, then stop the sidecar.

$page.close;
$context.close;
$browser.close;

$playwright.stop;

stop closes the sidecar's stdin, which closes any browser the sidecar still holds before the Node process exits.

WWW::Playwright v0.9.1

A Raku driver for Playwright via a long-lived Node sidecar

The Camelia image is copyright 2009 by Larry Wall. "Raku" is trademark of the Yet Another Society. All rights reserved.