Новое: TestSprite CLI уже доступен!

Ваш тест-план — это JSON-файл. Обращайтесь с ним соответственно.

Каждый тест-план TestSprite — это обычный JSON-файл из шагов action и assertion. Заберите его командой testsprite test code get, закоммитьте, смотрите diff в pull request и дайте коллеге на ревью — вместо того чтобы оставлять его запертым внутри проприетарного GUI-рекордера.

Встроено в тот же CLI, которым вы уже пользуетесь

GitHub ActionsGitLab CIЛокальные запускиЦиклы агента
Тест-план, который нельзя сравнить через diff, — это тест-план, который нельзя проверить на ревью. Если он не хранится в git рядом с кодом, который проверяет, значит он на самом деле не под контролем версий.

Обычный JSON, а не чёрный ящик

Каждый тест-план — это читаемый JSON-файл из явных шагов action и assertion: его можно открыть, прогнать через grep и точно понять, что он делает, не переигрывая запись.

Коммитьте его как любой другой файл

Поскольку тест-план — это файл на диске, он живёт в вашем репозитории рядом с кодом, который тестирует, — так же отслеживается, ветвится и версионируется.

Смотрите diff в pull request

Изменение тест-плана даёт настоящий git diff — ревьюер видит, какой именно шаг изменился, вместо того чтобы верить на слово, что перезаписанный сценарий делает то же самое.

Редактируйте напрямую

Заберите исходный файл командой testsprite test code get, вручную измените шаги в редакторе и отправьте обратно командой testsprite test code put.

$ testsprite test code get TC_checkout_promo
  Wrote test-plans/TC_checkout_promo.json

$ git diff test-plans/TC_checkout_promo.json
    {
      "action": "click #promo-code-input",
-     "assertion": "input is focused"
+     "action": "type '10PERCENT' into #promo-code-input",
+     "assertion": "discount line shows -10%"
    }

$ testsprite test code put TC_checkout_promo
  Updated test plan from local file

Хватит проверять покрытие тестами по видеозаписям экрана

Записанный сценарий живёт внутри проприетарного инструмента, поэтому коллеге приходится либо верить ему на слово, либо перезапускать его, чтобы понять, что изменилось. JSON тест-план можно включить в тот же pull request, что и код, который он тестирует, и проверить его точно так же.

Создано для команд, которые уже проверяют код на ревью

Вписывается в существующий workflow

Тест-план находится в том же репозитории и том же pull request, что и изменение, которое он покрывает, — проверяется теми же привычками работы с git diff, которые уже есть у вашей команды.

Создайте каркас, потом доработайте

testsprite test scaffold генерирует начальный тест-план; testsprite test lint проверяет его структуру перед коммитом.

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

Есть бесплатная community-версия, благодаря которой CLI доступен каждому.

Работает в связке со сравнением прогонов

Когда тест-план версионирован, используйте testsprite test diff, чтобы сравнить два прогона по нему и увидеть, что именно изменилось в поведении.

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

"TestSprite предлагает богатую генерацию тест-кейсов, четкую структуру и легко читаемый код. Он также поддерживает простую онлайн-отладку с возможностью быстрого расширения путем генерации новых тест-кейсов."

"Автоматизация TestSprite помогает нам сократить огромное количество ручной работы. Разработчики могут легко обнаруживать и устранять ошибки на более ранних этапах процесса разработки."

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

Что значит, что тест-план — это «просто JSON»?

Каждый тест-план — это обычный JSON-файл из шагов action и assertion — никакого проприетарного формата и бинарной записи, поэтому он открывается в любом редакторе и чисто сравнивается через diff в git.

Как получить исходный файл тест-плана?

testsprite test code get <testId> забирает JSON на ваш локальный компьютер. Отредактируйте шаги напрямую, затем отправьте изменения обратно командой testsprite test code put.

Может ли коллега проверить тест-план так же, как проверяет код?

Да — поскольку это JSON-файл, который можно сравнивать через diff, он может войти в тот же pull request, что и изменение, которое тестирует, и пройти ревью через обычный git diff, а не видеозапись экрана.

Нужно ли создавать каждый тест-план с нуля?

Нет — testsprite test scaffold генерирует начальную структуру, а testsprite test lint проверяет её перед коммитом.

А если нужно сравнить два прогона тестов, а не две версии файла?

Для этого есть testsprite test diff — он сравнивает два прогона, чтобы показать, что изменилось при выполнении, отдельно от истории самого тест-плана в git.

Ваше покрытие тестами должно жить под контролем версий.