Migrate from Cypress
Cypress suites grow into a web of cy.get() selectors, custom commands, fixtures, and intercepts. Every UI change ripples through cypress/e2e, and flake-fighting (cy.wait, retries, { force: true }) becomes its own workstream.
TesterArmy tests are natural-language steps executed by an AI agent with vision - no selectors to maintain, no waits to tune. The fastest migration path is letting your coding agent (Claude Code, Cursor, Codex) read your Cypress suite and convert it with the TesterArmy CLI.
How concepts map
What translates and what doesn’t
End-to-end specs translate directly: the user intent behind each cy.* chain becomes an act or assert step, and your selector strategy (data-cy attributes included) is simply dropped.
A few things don’t carry over:
cy.intercept()mocks and stubs - TesterArmy runs against a real environment, so target staging or preview deployments instead of stubbing the network.- Component tests (
cy.mount) - keep these in Cypress or move them to a component test runner; TesterArmy is for end-to-end flows. cy.task()/ direct database seeding - use a preparation test or seed your staging environment before runs instead.
Prerequisites
Get an API key from the dashboard. For non-interactive agent sessions, set TESTERARMY_API_KEY instead.
The migration prompt
Paste this into your coding agent in the repository that contains your Cypress tests:
After the migration
- Review the migrated tests in the dashboard - step titles should read like instructions for a human tester.
- Add credentials for the logins your custom commands handled.
- If your suite relied on seeding, set up a preparation test that runs before the group.
- Replace the
cypress runCI job withta tests run --group <groupId>or a group webhook, then remove the Cypress dependency once runs are green.
