Playwright 1.54. Печеньки та HTML-звіти без зайвого

💡 Усі статті, обговорення, новини про тестування — в одному місці. Приєднуйтесь до QA спільноти!

Вітаю. З вами Артур!

Сьогодні Playwright релізнув нову версію 1.54.

Основні оновлення

— Нове поле cookie partitionKey у методах browserContext.cookies() та browserContext.addCookies(). Це поле дозволяє зберігати та відновлювати partitioned cookie. Детальніше читайте в статті MDN про CHIPS. Зверніть увагу, що різні браузери мають різну підтримку та стандартні налаштування для розділення cookie.

Шо це таке, якшо в двох словах — уявіть у вас є сайт artur.com і він вбудований у news.com, його cookie зберігається як artur.com на news.com. Коли той самий artur.com вбудований у shop.com, створюється інша, окрема версія cookie і не можна зіставити користувача між цими сайтами. Без цього коли сайт artur.com вбудований в кілька сайтів (news.com, shop.com), то він бачить один і той самий cookie скрізь і ви може відстежувати користувача між сайтами. Як виглядає partitioned cookie:

Set-Cookie: id=abc123; Partitioned; Secure; SameSite=None

— Partitioned — атрибут, що каже браузеру: «це кука має зберігатися окремо для кожного сайту».

— SameSite=None; Secure — обов’язкові, бо це third-party cookie.

Коли корисно:

— CDN та кеші: щоб, наприклад, cdn.example.com міг зберігати куки незалежно для кожного сайту.

— Інтеграції з іншими сервісами, які вбудовуються на сайт, але не мають права трекати користувача глобально.

Це не для трекінгу, а для збереження стану ізоляції, коли third-party cookie потрібне, але без порушення приватності

— Нова опція noSnippets для вимкнення код сніпетів в HTML-звіті:

import { defineConfig } from '@playwright/test';

export default defineConfig({
    reporter: [['html', { noSnippets: true }]]
});

— Нове поле location у анотаціях тестів, наприклад у testResult.annotations та testInfo.annotations. Воно показує, де саме було додано анотацію, тіпа test.skip або test.fixme.

Командний рядок

— Нова опція --user-data-dir. Тепер можна вказати ту саму папку даних юзера для повторного використання стану браузера, наприклад, для повторної автентифікації між сесіями. Наприклад:

npx playwright codegen --user-data-dir=./user-data

— Опція -gv видалена з команди npx playwright test. Замість неї юзайте --grep-invert.

— Команда npx playwright open більше не відкриває рекордер тестів. Замість цього використовуйте:

npx playwright codegen

Різне

  • Підтримка Node.js 16 видалена.
  • Підтримка Node.js 18 застаріла і буде видалена в майбутньому.

P.S.

Всім гарного дня, стабільних тестів та буду радий бачити у своїй групі, щоб слідкувати за оновленнями світу розробки та тестування!

Як бачимо по останніх релізах крутих фічей все менше та менше. Ну, не двино — адже плейрайт ітак уже випередив усіх конкурентів :) Будемо дивитись шо там буде далі.

👍ПодобаєтьсяСподобалось4
До обраногоВ обраному0
LinkedIn
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter
Дозволені теги: blockquote, a, pre, code, ul, ol, li, b, i, del.
Ctrl + Enter

Там мікрософт купу народу позвільняв, може їх теж зачепило?

та може. ну подивимось далі шо буде)

Підписатись на коментарі