TGViewer
Инструменты программиста Инструменты программиста @prog_tools · 12.9K subscribers
Post #2859 1.41K
Тест падает раз в двадцать прогонов, и повтор ничего не проясняет: он идёт сразу же, в том же состоянии браузера, а зависшее действие всё равно досиживает свой таймаут до конца.

Playwright — фреймворк сквозного тестирования, который гоняет Chromium, Firefox и WebKit через один API. Версия 1.62.0 вышла 24 июля.

Что внутри:
🔘 стратегия повторов настраивается через testConfig.retryStrategy: immediate перезапускает тест сразу, isolated откладывает все повторы на конец прогона и выполняет их последовательно в одном воркере;
🔘 большинство действий и web-first проверок принимают AbortSignal, поэтому зависшее ожидание можно отменить из кода; обычный таймаут при этом продолжает работать, а timeout: 0 его выключает;
🔘 скриншоты и снимки для визуальных тестов сохраняются в WebP, при quality: 100 сжатие идёт без потерь, меньшие значения дают сжатие с потерями;
🔘 компонентные тесты переехали на модель stories и galleries: fixtures.mount() монтирует story и возвращает Locator с методами update() и unmount();
🔘 у репортеров появился хук reporter.preprocess(), он вызывается после разбора конфигурации и до onBegin(), в нём тест можно пометить как пропущенный, исключённый, починенный или падающий;
🔘 в storage state сохраняются виртуальные ключи WebAuthn, их можно подставить в следующие контексты браузера и не проходить вход по passkey заново;
🔘 добавлены режимы автопрокрутки scroll: "auto" и scroll: "none", метод apiResponse.timing() и locator.waitForFunction(), а page.evaluate() и addInitScript() теперь принимают функции аргументами, поэтому реже приходится собирать JavaScript строками.

Пригодится тем, кто держит большой набор кроссбраузерных тестов в CI и разбирается с плавающими падениями.

Debian 11 больше не поддерживается. В релизе проверены Chromium 151.0.7922.34, Firefox 153.0 и WebKit 26.5.

Язык: TypeScript. Лицензия: Apache 2.0.

@prog_tools
  • 👍 1
More from @prog_tools
  1. Sep 20, 2026Как переходить между каталогами с zoxide zoxide запоминает, какие каталоги вы открываете ч…
  2. Sep 20, 2026Как искать по коду с ripgrep с учётом .gitignore ripgrep (rg) рекурсивно ищет строки по ре…
  3. Sep 19, 2026Три вещи, которые невозможно объяснить человеку, родившемуся после 2005-го: зачем нужен бы…
  4. Sep 19, 2026Task: кроссплатформенный запуск задач проекта Task — быстрый инструмент сборки для повторя…
  5. Sep 19, 2026Как запускать и тестировать HTTP-запросы с Hurl Hurl — командная утилита для HTTP-запросов…
  6. Sep 18, 2026Tokei считает строки кода и отделяет их от комментариев Tokei — утилита командной строки д…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →