Time Travel (Preview)
Обзор
Режим Time Travel — это новый инструмент Testplane UI, который позволяет наблюдать за ходом выполнения тестов в реальном времени, а также записывать и воспроизводить ход прохождения теста.
- Time Travel записывает снимки DOM-дерева, то есть не скриншоты или видео, а настоящую DOM-разметку
- Вес одного снапшота в среднем составляет около 200КБ благодаря сжатию и инкрементальному алгоритму записи
- Весь функционал доступен как в рамках GUI, так и в статическом отчете, полученном из любого CI
Начало работы
Обратите внимание, что функционал Time Travel в данный момент находится в стадии Preview. Для использования в production рекомендуем дождаться stable версии.
-
Необходимо установить alpha-версии
testplane
иhtml-reporter
:npm i -D testplane@8.26.0-alpha.1 html-reporter@10.15.0-alpha.1
-
Включить запись снапшотов в конфиге testplane:
export = {
/* ... */
record: "on",
}; -
Выполнить прогон тестов и активировать Time Travel в настройках UI:
Использование Time Travel
После активации Time Travel во всех поддерживаемых браузерах перед запуском будет отображаться окно плеера. Во время прогона теста в него будет стримиться происходящее в браузере.
По завершении прогона теста можно воспроизвести снятые снапшоты и перемещаться во времени. При наведении на конкретный шаг плеер покажет состояние браузера на момент его выполнения.
Для отладки верстки вы можете воспользоваться DevTools браузера. Все селекторы и атрибуты сохранены без изменений.
Настр ойка Time Travel
В данный момент всё управление записью снапшотов происходит с помощью опции record
в конфиге Testplane. Поддержано 2 значения: "on"
(снапшоты будут записываться на каждый запуск теста) и "off"
(снапшоты полностью отключены).
В самом ближайшем будущем появятся более умные режимы записи снапшотов, такие, как "только при падении" или "включить при ретраях". Помимо этого скоро станет доступна отладка сетевых запросов и полноэкранный режим.