ИИ-агент пишет автотесты в Testence: тестировщик перестаёт проверять одно и то же вручную
Открытый фреймворк Testence закрывает пробел, который ИИ-агенты пока оставляют тестировщикам: агент сам пишет и отлаживает автотесты для повторяющихся проверок, а готовые тесты потом работают без него.

Testence проверяет не только кнопки на экране, но и реальное сохранение данных. В демонстрационном прогоне интерфейс показал успех, а сервер ничего не сохранил.
Перед каждым релизом тестировщик заново проходит вход, создание, редактирование, сохранение и удаление записей. Автор Testence пишет, что инструменты для автоматизации уже есть, а ИИ-агенты (программы на основе нейросети, которые сами выполняют цепочку действий, а не только отвечают на вопросы) помогают с отдельными задачами. Собирать из них рабочий процесс тестировщику по-прежнему приходится вручную. Testence задуман как единая цепочка: от описания фичи и тест-дизайна до готовых тестов и отчёта с доказательствами результата.
Что понадобится?
- Python и pytest (популярная библиотека для запуска автотестов на Python). Testence открытый Python-фреймворк, то есть готовый каркас для своих проверок.
- Playwright, инструмент, который управляет браузером вместо человека. Готовые тесты Testence работают на нём.
- Доступ к веб-приложению и его API (программному интерфейсу, через который можно запросить данные напрямую, минуя экран). Без него не получится независимая проверка результата.
- Ваше знание фичи: ожидаемое поведение, ограничения, нюансы, известные риски.
- По желанию CI/CD (конвейер, который сам собирает и проверяет код при каждом изменении), если тесты должны запускаться автоматически.
Команды установки и требования к модели в описании автора не приводятся. Перед стартом сверьтесь с документацией проекта.
Пошаговая инструкция: от описания фичи до теста, которому можно верить
- Опишите агенту фичу целиком: не только шаги, но и что считается успехом, где ограничения, что уже ломалось.
- Дайте агенту провести тест-дизайн, исследовать интерфейс, написать и отладить тесты.
- Для каждого действия определите оракул (oracle), то есть независимую проверку результата. Пример: после сохранения прочитать карточку через API от имени того же пользователя.
- Запускайте готовые тесты по команде или в CI/CD. Их выполняет детерминированный runner (запускатель, который каждый раз действует одинаково) без вызовов LLM, то есть большой языковой модели.
- Когда фича меняется, агент помогает обновить сценарии и тесты, а вы проверяете его правки.
Шаблон описания фичи для агента:
Фича: создание карточки.
Ожидаемое поведение: после нажатия «Сохранить» карточка с указанным названием
появляется в списке и остаётся после обновления страницы.
Доказательство успеха: чтение карточки через API от имени того же пользователя
возвращает нужное название.
Ограничения: роли пользователей, виртуальный список.
Известные риски: интерфейс показывает карточку до ответа сервера.
Почему зелёный тест может врать?
Автор разбирает случай с оптимистичным обновлением: интерфейс сразу рисует результат, не дожидаясь ответа сервера. На синтетическом стенде сервер намеренно подтверждал запрос, но не сохранял данные. Уведомление об успехе появлялось, карточка в списке была, а после обновления страницы исчезала.
Тест, который просто переводит ручные шаги в код, такой дефект не поймает. Отсюда рабочий вывод: на этапе проектирования решите, чем доказать успех, и сохраните эту проверку в готовом тесте.
Автор отдельно оговаривает, что сам по себе запрос к API ничего не гарантирует. Можно прочитать кэш, чужую карточку или данные другого пользователя, поэтому проверка привязывается к конкретному действию.
Зачем Testence, если есть Playwright?
Playwright находит элементы и ждёт их доступности, но его ожидания не всегда совпадают с тем, что происходит внутри приложения. При гидратации (моменте, когда страница уже видна, а её «начинка» ещё подключается) кнопка выглядит доступной, а обработчик нажатия ещё не работает. Playwright нажмёт, и ничего не произойдёт. По словам автора, этот случай описан прямо в документации Playwright.
Testence делит работу на две роли. Агент исследует, пишет и разбирается в падениях один раз, а повторяющийся запуск остаётся обычным кодом. Получается дешевле и предсказуемее, чем звать нейросеть на каждый прогон.
Агент написал тест: ввести название карточки, нажать «Сохранить», проверить уведомление и карточку в списке. UI-проверки (проверки интерфейса на экране) прошли. В прогоне r-habr-card-defect независимое чтение через API вместо ожидаемого названия и состояния saved вернуло name: null и state: missing. Без оракула этот тест остался бы зелёным.
Что делать с этим прямо сейчас, по ролям
Тестировщику: даже без Testence добавьте в ручной чек-лист шаг «обновить страницу и проверить снова». Он ловит тот же класс ошибок, что и оракул.
Руководителю отдела тестирования: проверьте, сколько ваших автотестов подтверждают только надпись «Успешно». Каждый такой тест стоит дополнить чтением данных через API.
Владельцу веб-сервиса в России: приёмы Testence не привязаны к стране и языку интерфейса. Оракул через API и проверка после обновления страницы работают на любом русскоязычном сайте, в интернет-магазине или личном кабинете.
- Доверять уведомлению «Сохранено» как доказательству. Это сообщение интерфейса, а не сервера.
- Проверять через API не те данные: кэш, чужую запись, другого пользователя.
- Ждать, пока элемент появится, а не пока он станет пригодным для работы. Его может перекрыть модальное окно, или кнопка будет активна долю секунды.
- Звать агента на каждый запуск. Решения о том, куда нажать и чего дождаться, должны остаться в коде теста.
На мой взгляд, главная ценность здесь даже не агент, а дисциплина «сначала доказательство, потом код». Её можно взять на вооружение сегодня, без всякого фреймворка. Честная оговорка: Testence автор пока разрабатывает. Агент не снимает с вас ответственности, его тесты и правки нужно читать так же внимательно, как код коллеги.
Учитесь работать с ИИ-агентами без иллюзий
В dzen.guru разбираем, где нейросети реально экономят время, а где требуют проверки
Перейти в dzen.guruЗелёный тест, который ничего не доказывает, хуже его отсутствия: он создаёт ложное спокойствие. Начните с одного сценария и одного оракула, и рутина перестанет съедать время, не забирая уверенность.

Основатель dzen.guru. Эксперт по монетизации и продвижению на Дзен. Автор курса «Старт на Дзен 2026».
Читайте также

Что такое галлюцинации нейросетей: три сбоя, которые детекторы ловят с точностью 50%
Андрей Бирюков, эксперт по ИТ и информационной безопасности, разделил «галлюцинации» корпоративного ИИ-ассистента на три разных сбоя, которые даже продвинутые…

Каждый девятый сайт с robots.txt закрылся от Claude AI и выпал из его ответов
Crawl Readiness в октябре 2026 года проверила топ-1000 сайтов и выяснила, что каждый девятый из сайтов с файлом robots.txt закрыл поискового бота Claude и…

ИИ-агенту доверяют деньги: в толстом харнессе списание одобряет код, а не модель
Толстый харнесс, программный контур вокруг нейросети, забирает у модели проверку прав, лимиты и подтверждения. Это нужно, когда ИИ-агенту доверяют переводить…
Комментарии