CHANGELOG
Changelog
All notable changes to BDD::Behave::Playwright are documented here. Versions
follow semver (MAJOR.MINOR.PATCH).
v0.9.1 - 2026-07-10
Added
visitsub that navigates the current page to a path. A path with a scheme (https://,file://) is used as-is; a relative path is resolved against the configured base URL.gotosub that navigates the current page to an explicit URL.base-urloption onplaywright-page, pluscurrent-base-url/set-current-base-urlsubs, so relativevisitpaths resolve against a base URL for the duration of each example. The base URL may be a value or aCallableresolved at navigation time.contextoption onplaywright-pagethat passes options through to the browser context created for each example.SHOW_CHROMEenvironment toggle viaheadless-from-env: an empty,0,false,no, oroffvalue keeps the browser headless, any other value runs it headed.
v0.9.0 - 2026-06-25
Added
playwright-pagelifecycle helper that launches one browser perdescribe, gives each example a fresh context and page, and exposes the page as aletnamedpage. Acceptsfixture,artifacts, andtraceoptions.BDD::Behave::Playwright.install($config, :type<system>)for registering the browser lifecycle once in a.behaveconfig file instead of callingplaywright-pagein eachdescribe. It wiresbefore-all/before-each/after-each/after-allhooks and a page helper to every group tagged with the giventype, and accepts the sameartifactsandtraceoptions.A
pageterm andfixture-urlsub exported fromBDD::Behave::Playwright, plus a.pageaccessor on the example topic, for reaching the current page in the config-registered system-test flow.BDD::Behave::Playwright::Sessionmodule backing the lifecycle (configure,start-browser,open-page,current-page,set-current-page,finish-page,stop-browser, and thePageHelperclass).Matchers over
LocatorandPage:be-visible,be-hidden,be-enabled,be-disabled,be-checked,have-text,have-value,have-attribute,have-count,have-css,have-title, andhave-current-path. Each negates with.notand reuses Playwright's auto-waiting rather than re-implementing waits.have-cssmirrors Capybara'shave_css(count,minimum,maximum,text).have-current-pathmatches the path by default and the full URL withurl => True.Failure diagnostics in
BDD::Behave::Playwright::Diagnostics: a screenshot captured to a configurable artifacts directory when an example fails, plus an optional Playwright trace gated by an env flag. A failing diagnostic does not fail the suite.mkdocs documentation under
docs-srccovering installation, lifecycle, matchers, diagnostics, system tests, and an end-to-end example.