Playwright - v1.29.0


New APIs

  • New method route.fetch() and new option json for route.fulfill():

    ```js
    await page.route('**/api/settings', async route => {
    // Fetch original settings.
    const response = await route.fetch();

    // Force settings theme to a predefined value.
    const json = await response.json();
    json.theme = 'Solorized';

    // Fulfill with modified data.
    await route.fulfill({ json });
    });
    ```

  • New method locator.all() to iterate over all matching elements:

    js // Check all checkboxes! const checkboxes = page.getByRole('checkbox'); for (const checkbox of await checkboxes.all()) await checkbox.check();

  • Retry blocks of code until all assertions pass:

    js await expect(async () => { const response = await page.request.get('https://api.example.com'); await expect(response).toBeOK(); }).toPass();

Read more in our documentation.

  • Automatically capture full page screenshot on test failure:
    ```js
    // playwright.config.ts
    import type { PlaywrightTestConfig } from '@playwright/test';

    const config: PlaywrightTestConfig = {
    use: {
    screenshot: {
    mode: 'only-on-failure',
    fullPage: true,
    }
    }
    };

    export default config;
    ```

Miscellaneous

Browser Versions

  • Chromium 109.0.5414.46
  • Mozilla Firefox 107.0
  • WebKit 16.4

This version was also tested against the following stable channels:

  • Google Chrome 108
  • Microsoft Edge 108

Details

date
Dec. 16, 2022, 10:51 p.m.
name
v1.29.0
type
Minor
👇
Register or login to:
  • 🔍View and search all Playwright releases.
  • 🛠️Create and share lists to track your tools.
  • 🚨Setup notifications for major, security, feature or patch updates.
  • 🚀Much more coming soon!
Continue with GitHub
Continue with Google
or