Новые API
- Новый метод
page.addLocatorHandler()
регистрирует коллбек, который будет вызван, когда указанный элемент станет видимым и может блокировать действия в Playwright. Коллбек может избавить от перекрытия.
Закрытие cookie-диалога при его появлении:
// Setup the handler. await page.addLocatorHandler( page.getByRole('heading', { name: 'Hej! You are in control of your cookies.' }), async () => { await page.getByRole('button', { name: 'Accept all' }).click(); }); // Write the test as usual. await page.goto('https://www.ikea.com/'); await page.getByRole('link', { name: 'Collection of blue and white' }).click(); await expect(page.getByRole('heading', { name: 'Light and easy' })).toBeVisible();
- Таймаут
expect(callback).toPass()
теперь можно настроить опциейexpect.toPass.timeout
глобально или в конфиге проекта - Событие
electronApplication.on('console')
возникает, когда основной процесс Electron вызывает консольные методы API.
electronApp.on('console', async msg => { const values = []; for (const arg of msg.args()) values.push(await arg.jsonValue()); console.log(...values); }); await electronApp.evaluate(() => console.log('hello', 5, { foo: 'bar' }));
- Новый синтаксис добавления тегов в тесты (@-токены в заголовке теста по-прежнему поддерживаются):
test('test customer login', { tag: ['@fast', '@login'], }, async ({ page }) => { // ... });
Используйте опцию командной строки --grep
, чтобы запускать только тесты с нужными тегами.
npx playwright test --grep @fast
- Флаг командной строки
--project
теперь поддерживает подстановочный знак ‘*’:
npx playwright test --project='*mobile*'
- Новый синтаксис аннотаций:
test('test full report', { annotation: [ { type: 'issue', description: 'https://github.com/microsoft/playwright/issues/23180' }, { type: 'docs', description: 'https://playwright.dev/docs/test-annotations#tag-tests' }, ], }, async ({ page }) => { // ... });
- page.pdf() теперь принимает два новых параметра —
tagged
иoutline
.
Поддержка
- Ubuntu 18 больше не поддерживается.
Версии браузеров
- Chromium 123.0.6312.4
- Mozilla Firefox 123.0
- WebKit 17.4
Эта версия была протестирована на следующих стабильных каналах:
- Google Chrome 122
- Microsoft Edge 123