StorageState для IndexedDB
Нова опція
indexedDB для browserContext.storageState() дозволяє зберігати та відновлювати IndexedDB. Корисно, якщо ваш додаток використовує IndexedDB для збереження токенів автентифікації, наприклад, Firebase Authentication.ts
// tests/auth.setup.ts
import { test as setup, expect } from '@playwright/test';
import path from 'path';
const authFile = path.join(__dirname, '../playwright/.auth/user.json');
setup('authenticate', async ({ page }) => {
await page.goto('/');
// ... кроки автентифікації ...
// Збереження IndexedDB
await page.context().storageState({ path: authFile, indexedDB: true });
});
---
Кнопка "Copy prompt" в HTML-звітах
Тепер у звітах HTML, Trace Viewer та UI-режимі з'явилася кнопка "Copy prompt". Вона дозволяє швидко скопіювати згенерований промпт із повідомленням про помилку та контекстом для її виправлення.
---
Фільтр видимих елементів
Опція
visible у locator.filter() дозволяє знаходити лише видимі елементи.ts
test('some test', async ({ page }) => {
// Ігноруємо невидимі елементи
const todoItems = page.getByTestId('todo-item').filter({ visible: true });
await expect(todoItems).toHaveCount(3);
});
---
Git-інформація у HTML-звіті
Тепер можна додати інформацію про Git (commit, diff) у HTML-звіт.
ts
import { defineConfig } from '@playwright/test';
export default defineConfig({
captureGitInfo: { commit: true, diff: true }
});
---
🔹 Покращення Test Steps
З'явився новий об'єкт
TestStepInfo, що дозволяє:✅ Додавати вкладення до кроків
✅ Пропускати кроки за певних умов
ts
test('some test', async ({ page, isMobile }) => {
await test.step('тут мій крок', async step => {
step.skip(isMobile, 'не актуально для мобільних');
await step.attach('моє вкладення', { body: 'якийсь текст' });
});
});
---
✔️
page.emulateMedia() та browser.newContext() тепер підтримують prefers-contrast. ✔️ Опція
failOnStatusCode примусово завершує запити API при статус-кодах, які не належать до 2xx або 3xx. ✔️
expect(page).toHaveURL() тепер підтримує предикати. ---
Актуальні версії браузерів
🟢 Chromium: 134.0.6998.35
🟠 Firefox: 135.0
🔵 WebKit: 18.4
---
https://github.com/microsoft/playwright/releases/tag/v1.51.0