CodeceptJS 4.0.0, выпущенный 21 мая 2026 года, представляет собой значительное крупное обновление фреймворка для автоматизации тестирования. Эта версия сосредоточена на модернизации и улучшении опыта разработчиков, основываясь на своей базе для сквозного тестирования. Для получения полной информации обратитесь к официальной статье в блоге CodeceptJS 4.0.0.
Ключевые Изменения
- Переписывание на TypeScript: Весь фреймворк теперь написан на TypeScript. Это обеспечивает улучшенную типобезопасность, лучшую автодополнение в IDE и упрощает поддержку для контрибьюторов, делая разработку тестовых скриптов более надежной и менее подверженной ошибкам.
- Playwright по Умолчанию: Playwright теперь является рекомендуемым и основным помощником браузера, предлагая современные возможности автоматизации браузеров и улучшенную производительность. Помощник WebDriver по-прежнему поддерживается для существующих проектов, но помощник WebDriverIO был полностью удален. Пользователям, в настоящее время использующим WebDriverIO, необходимо спланировать миграцию на Playwright или WebDriver.
- Улучшения и Устаревания API:
I.seeElementиI.dontSeeElementтеперь по умолчанию проверяют видимость элемента, что соответствует восприятию пользователя. Для проверки только наличия в DOM доступен новый методI.seeInDOM.- Методы
I.clickиI.fillFieldтеперь внутренне используют APIlocatorPlaywright, улучшая таргетирование элементов, стабильность и уменьшая нестабильность. I.amOnPageтеперь по умолчанию ожидаетnetworkidle, чтобы убедиться, что все ресурсы страницы загружены до продолжения, предотвращая распространенные проблемы с таймингами.- Старые методы
I.wait*(например,I.wait,I.waitForVisible) устарели в пользу более явных методовI.waitFor*(например,I.waitForElement,I.waitForText), способствуя более четкой тестовой логике. - Методы
I.grab*теперь возвращаютnullвместо выбрасывания ошибки, если элемент не найден, что позволяет более изящно обрабатывать ошибки и использовать условную логику в тестах.
- Новые Возможности: Этот релиз вводит
I.waitForResponseиI.waitForRequestдля расширенного мониторинга сети,I.attachFileдля упрощенной загрузки файлов иI.switchToNextTab/I.switchToPreviousTabдля более гибких сценариев тестирования с несколькими вкладками. - Обновление Конфигурации: Структура файла конфигурации была обновлена; в частности, секция
pluginsперемещена внутрь объектаconfigв файлахcodecept.conf.tsили.js.
Влияние на QA Команды
Это обновление предоставляет QA командам более стабильный и типобезопасный фреймворк, что особенно полезно для крупных, сложных проектов. Переход на Playwright в качестве основного помощника соответствует современным тенденциям автоматизации браузеров, потенциально улучшая скорость и надежность выполнения тестов. Командам, в настоящее время использующим WebDriverIO, потребуется выделить ресурсы для миграции существующих тестов на Playwright или WebDriver.
