A test runner built for humans.

Test status menu

See how many tests passed or failed, and how long they took to run

Viewport sizing

Test responsive layouts by changing your app’s viewport size

Command Log

Hover over a command in the log and the app preview shows you exactly what it looked like when the test ran. Our users call it time travel ✨

App preview

While test commands execute, see what happens in your app in real time. Use your DevTools to inspect or debug each command

Cypress makes these 4 tasks amazingly simple:

Setting up tests

Write your first passing test in 60 seconds.There are no servers, drivers, or any other dependencies to install or configure.

"Just wrote an e2e test with Cypress in an hour for our Angular app which has taken me 2 days in protractor. 1 gazillion thumbs up on a brilliant product!"Mark Valenzia

Writing tests

Tests written in Cypress are easy to read and understand. Our API comes fully baked, on top of tools you are familiar with already.

"After all that selenium timeout hell. Finally I can focus on writing tests instead of fighting with browsers."Albert Fazullin - Senior Software Engineer

Running tests

Cypress runs as fast as your browser can render content. You can watch tests run in real time as you develop your applications. TDD FTW!

"Wow, Cypress is the first end to end testing environment I've used that doesn't feel like a chore and actually speeds up my development. 😵"Chris Fritz - Vue.js Core Team Member


Readable error messages help you to debug quickly. You also have access to all the developer tools you know and love.

"These days I find it often faster and easier to debug certain issues that i just quick write a test for it.. helped me to identify a few of our production bugs already :)"Yogi Langnickel - Developer at Shine Solutions Group

Game changers

Time travel

Cypress takes snapshots as your tests run. Simply hover over commands in the Command Log to see exactly what happened at each step.


Stop guessing why your tests are failing. Debug directly from familiar tools like Chrome DevTools. Our readable errors and stack traces make debugging lightning fast.

Real time reloads

Cypress automatically reloads whenever you make changes to your tests. See commands execute in real time in your app.

Automatic waiting

Never add waits or sleeps to your tests. Cypress automatically waits for commands and assertions before moving on. No more async hell.

Spies, stubs, and clocks

Verify and control the behavior of functions, server responses, or timers. The same functionality you love from unit testing is right at your fingertips.

Network traffic control

Easily control, stub, and test edge cases without involving your server. You can stub network traffic however you like.

Consistent results

Our architecture doesn’t use Selenium or WebDriver. Say hello to fast, consistent and reliable tests.

Screenshots and videos

View screenshots taken automatically on failure, or videos of your entire test suite when run headlessly.

Supported Browsers

Google Chrome logo


Mozilla Firefox logo


Microsoft Edge logo


Webkit browser logo


Electron framework logo


Brave browser logo


How is this possible?

Let us explain how we make this magic happen...

Ready to try Cypress?

or Download now

Install Cypress for Mac, Linux, or Windows, then get started.

Read our docs

We have awesome documentation covering absolutely everything you need to know about testing with Cypress.

Chat with us

Our fantastic open source community is super active on Gitter chat and Stack Overflow. Join us!

Contribute to Cypress

Your input is so valuable to us. Contribute your code, bug reports and feature requests on GitHub.