
Обновление локаторов:
-
Используйте locator.or(), чтобы создать локатор, соответствующий любому из двух локаторов. Рассмотрим сценарий, в котором вы хотели бы нажать на кнопку «Новое электронное письмо», но иногда вместо этого появляется диалоговое окно настроек безопасности. В этом случае вы можете дождаться либо кнопки «Новое электронное письмо», либо диалогового окна и действовать соответствующим образом:
const newEmail = page.getByRole('button', { name: 'New' }); const dialog = page.getByText('Confirm security settings'); await expect(newEmail.or(dialog)).toBeVisible(); if (await dialog.isVisible()) await page.getByRole('button', { name: 'Dismiss' }).click(); await newEmail.click();
-
Используйте новые параметры
hasNotиhasNotTextв locator.filter() для поиска элементов, которые не соответствуют определенным условиям.
const rowLocator = page.locator('tr'); await rowLocator .filter({ hasNotText: 'text in column 1' }) .filter({ hasNot: page.getByRole('button', { name: 'column 2 button' }) }) .screenshot();
-
Используйте новое веб-утверждение expect(locator).toBeAttached(), чтобы убедиться, что элемент присутствует в DOM страницы. Не путайте с expect(locator).toBeVisible(), который гарантирует, что элемент одновременно прикреплен и виден.
Новые API
-
Новая опция
hasNotв locator.filter() -
Новая опция
hasNotTextв locator.filter() -
Новая опция
timeoutв route.fetch()
⚠️ Критическое изменение
-
mcr.microsoft.com/playwright:v1.34.0теперь соответствует образу Playwright, основанному на Ubuntu Jammy. Чтобы использовать focal-based образ, пожалуйста используйтеmcr.microsoft.com/playwright:v1.34.0-focal
Версии браузеров
-
Chromium 113.0.5672.53
-
Mozilla Firefox 112.0
-
WebKit 16.4
Эта версия также была протестирована на следующих стабильных каналах:
-
Google Chrome 112
-
Microsoft Edge 112
Напомню, Playwright — это фреймворк для веб-тестирования и автоматизации. Который позволяет тестировать Chromium, Firefox и WebKit с помощью единого API.

ссылка на оригинал статьи https://habr.com/ru/articles/733962/
Добавить комментарий