Playwright v1.17.0stable Released Nov 30, 2021
Impact Score: 5/10

Playwright v1.17.0 โ€” Release Notes & Engineering Impact

Source available โ€” automated, not human-reviewed

Component: playwright ยท Channel: stable. Automated analysis, not a compatibility certification. How this works.

Analysis updated: 2026-11-01.

Compatibility not verified โ€” check source notes
๐Ÿ“„ .MD
โšก Executive Summary (TL;DR)

Playwright v1.17.0. Source highlight: Playwright v1.17 updates

Who Does This Impact? (Role-Based Analysis)

๐Ÿ’ป Software Engineers & Devs

Check the source notes against the package and APIs you use before upgrading.

๐Ÿ“Š Product & Engineering Leads

Use the documented changes to assess relevance to your product; release frequency alone is not a quality measure.

โš™๏ธ DevOps & Security

Verify the target version, runtime requirements and rollback procedure in the official documentation.

๐Ÿ“„ View Raw Release Notes (Original Developer Log)
<a href="https://youtu.be/7iyIdeoAP04">![release-1.17](https://user-images.githubusercontent.com/883973/169663759-f810a03f-6488-436a-835a-21d18bed8fb1.jpg)</a> <a href="https://youtu.be/7iyIdeoAP04">Playwright v1.17 updates</a> ## Frame Locators Playwright 1.17 introduces [frame locators] - a locator to the iframe on the page. Frame locators capture the logic sufficient to retrieve the `iframe` and then locate elements in that iframe. Frame locators are strict by default, will wait for `iframe` to appear and can be used in Web-First assertions. ![Graphics](https://user-images.githubusercontent.com/746130/142082759-2170db38-370d-43ec-8d41-5f9941f57d83.png) Frame locators can be created with either [`page.frameLocator(selector)`] or [`locator.frameLocator(selector)`] method. ```js const locator = page.frameLocator('#my-iframe').locator('text=Submit'); await locator.click(); ``` Read more at [our documentation](https://playwright.dev/docs/next/api/class-framelocator). ## Trace Viewer Update Playwright Trace Viewer is now **available online** at https://trace.playwright.dev! Just drag-and-drop your `trace.zip` file to inspect its contents. > **NOTE**: trace files are not uploaded anywhere; [trace.playwright.dev](https://trace.playwright.dev) is a [progressive web application](https://web.dev/progressive-web-apps/) that processes traces locally. - Playwright Test traces now include sources by default (these could be turned off with tracing option) - Trace Viewer now shows test name - New trace metadata tab with browser details - Snapshots now have URL bar ![image](https://user-images.githubusercontent.com/746130/141877831-29e37cd1-e574-4bd9-aab5-b13a463bb4ae.png) ## HTML Report Update - HTML report now supports dynamic filtering - Report is now a **single static HTML file** that could be sent by e-mail or as a slack attachment. ![image](https://user-images.githubusercontent.com/746130/141877402-e486643d-72c7-4db3-8844-ed2072c5d676.png) ## Ubuntu ARM64 support + more - Playwright now supports **Ubuntu 20.04 ARM64**. You can now run Playwright tests inside Docker on Apple M1 and on Raspberry Pi. - You can now use Playwright to install stable version of Edge on Linux: ```bash npx playwright install msedge ``` ## New APIs - Tracing now supports a [`'title'`](https://playwright.dev/docs/next/api/class-tracing#tracing-start-option-title) option - Page navigations support a new [`'commit'`](https://playwright.dev/docs/next/api/class-page#page-goto) waiting option - HTML reporter got [new configuration options](https://playwright.dev/docs/next/test-reporters#html-reporter) - [`testConfig.snapshotDir` option](https://playwright.dev/docs/next/api/class-testconfig#test-config-snapshot-dir) - [`testInfo.parallelIndex`](https://playwright.dev/docs/next/api/class-testinfo#test-info-parallel-index) - [`testInfo.titlePath`](https://playwright.dev/docs/next/api/class-testinfo#test-info-title-path) - [`testOptions.trace`](https://playwright.dev/docs/next/api/class-testoptions#test-options-trace) has new options - [`expect.toMatchSnapshot`](https://playwright.dev/docs/next/test-assertions#expectvaluetomatchsnapshotname-options) supports subdirectories - [`reporter.printsToStdio()`](https://playwright.dev/docs/next/api/class-reporter#reporter-prints-to-stdio) ## Browser Versions - Chromium 98.0.4695.0 - Mozilla Firefox 94.0.1 - WebKit 15.4 This version was also tested against the following stable channels: - Google Chrome 96 - Microsoft Edge 96 --- [frame locators]: https://playwright.dev/docs/next/api/class-framelocator [`page.frameLocator(selector)`]: https://playwright.dev/docs/next/api/class-page#page-frame-locator [`locator.frameLocator(selector)`]: https://playwright.dev/docs/next/api/class-locator#locator-frame-locator