TestSprite CLI уже доступен — открытый код.Поставьте звезду на GitHub

Автоматические тесты для GitHub — без ещё одного файла workflow

Ваш конвейер уже сообщает GitHub, когда сборка развёрнута и адрес доступен. TestSprite слушает это событие, прогоняет по развёртыванию ваши тесты и возвращает результат комментарием к пул-реквесту или проверкой на коммите. Настройка занимает около десяти минут и ничего не меняет в вашем репозитории.
Type
Solution
Language
Русский

Бесшовная интеграция с вашими редакторами для Android и редакторами на базе ИИ

Claude CodeCodexAndroid StudioVisual Studio CodeCursorTrae
Мы не собираем и не развёртываем ваше приложение и не трогаем ваши workflow. Мы слушаем событие, означающее «новая сборка доступна», и тестируем то, что получилось.

Никаких изменений в репозитории

TestSprite ставится как GitHub App и только читает события. Он стоит рядом с вашим конвейером, а не внутри него: не нужно писать YAML, поддерживать workflow и что-либо добавлять в .github/.

Запуск по настоящему развёртыванию

Выберите событие CI/CD, которое срабатывает после того, как окружение поднялось. Выбрать то, что срабатывает в начале сборки, — самая частая ошибка настройки: тогда все тесты падают на адресе, которого ещё нет.

Результаты приходят в пул-реквест

Число пройденных и упавших тестов, оценка качества, считаемая только по исполнимой части набора, скриншоты момента падения и подсказка для исправления, написанная так, чтобы вставить её прямо в ваш ИИ-агент для программирования.

Обязательная проверка, блокирующая слияние

Включите Block PR until tests pass, и проверка TestSprite станет обязательной: регрессия остановит слияние, а не проскочит, чтобы обнаружиться позже.

Priority
Test
Status
HIGH
TC001_Preview_Deployment_Reachable
Pass
HIGH
TC002_Checkout_Completes_On_Preview
Failed
MEDIUM
TC003_Auth_Redirect_Preserves_Path
Pass
MEDIUM
TC004_API_Health_Returns_200
Pass
LOW
TC005_Static_Assets_Load_Without_404
Warning

Закройте каждый пул-реквест настоящим браузером

Зелёная галочка должна означать, что развёрнутое приложение работает, а не что набор тестов успешно отправлен. TestSprite дожидается настоящего вердикта и роняет задачу при частичном прогоне, а не выдаёт его за успешный.

Для команд, которые выпускают на GitHub

Работает с вашим хостингом

Любой провайдер, который сообщает о развёртывании в GitHub и отдаёт доступный адрес: Vercel, AWS Amplify, Netlify и собственные конвейеры, создающие развёртывания GitHub.

Пул-реквест или push

Триггер на пул-реквест ловит регрессии до слияния и комментирует в PR. Триггер на push после каждого слияния проверяет общее staging- или dev-окружение и оставляет проверку на коммите. Создайте оба — они работают независимо.

Либо управляйте из CLI

Хотите держать запуск в своих руках? CLI с открытым исходным кодом делает то же самое из любой CI, а testsprite ci init github сгенерирует вам workflow.

Бесплатная community-версия

Мы предлагаем бесплатную community-версию, доступную всем.

Нам доверяют компании по всему миру

"Отличная работа! Очень крутой MCP от команды TestSprite! Для наших Android-приложений связка ИИ-кодирования и ИИ-тестирования замыкает цикл разработки и ускоряет выпуск стабильных релизов."

"Для Android сгенерированные тесты TestSprite чистые и надежные. Сценарии Appium легко расширять и отлаживать, а запуски по расписанию поддерживают хорошее покрытие устройств."

"Автоматизация от TestSprite значительно сократила наше ручное QA для Android. Разработчики выявляют и исправляют мобильные баги на ранних стадиях, что позволяет нам выпускать релизы вовремя."

Часто задаваемые вопросы

Нужно ли добавлять файл workflow в репозиторий?

Нет. Интеграция настраивается целиком в TestSprite и не требует изменений в репозитории. Если вы предпочитаете запускать из собственного workflow, testsprite ci init github сгенерирует его на основе поддерживаемого действия TestSprite.

Заменит ли это мой текущий workflow GitHub Actions?

Нет. TestSprite слушает события, которые ваш workflow и так порождает; он не изменяет и не заменяет ваш конвейер.

А если мой репозиторий вообще ничего не развёртывает?

Тогда слушать нечего. TestSprite запускается по событию развёртывания, поэтому это событие должно существовать. Добавьте шаг развёртывания в конвейер или используйте CLI внутри workflow, указав проекту адрес, который вычислите сами.

Откуда TestSprite знает preview-адрес?

Вы один раз задаёте шаблон с подстановками, которые вычисляются на каждом запуске: {pr}, {branch}, {branch-slug}, {sha} и {short-sha}. Так https://pr-123.example.com записывается как https://pr-{pr}.example.com.

Какие разрешения нужны GitHub App?

Чтение actions, checks, issues и metadata; чтение и запись для code, commit statuses, deployments и pull requests. Право записи и позволяет публиковать результаты в ваших пул-реквестах. TestSprite не пушит коммиты и не меняет ваши файлы workflow.

Могут ли результаты попадать в ИИ-агент для программирования?

Да. К каждому провалу в комментарии к пул-реквесту приложена подсказка для исправления, написанная для вставки в такой агент. Для более полного цикла testsprite setup --agent claude устанавливает навык верификации, чтобы агент сам создавал, запускал и разбирал тесты.

Тестируйте каждый PR, не трогая репозиторий