This is an example app used to showcase Cypress.io End-to-End (E2E) testing. The application demonstrates the use of most Cypress API commands. Additionally this example app is configured to run E2E tests in various CI platforms. The tests are also heavily commented.
To see the kitchen sink application, and to view the Cypress API commands demonstrated by the app, visit example.cypress.io.
For a full reference of our documentation, go to docs.cypress.io.
For an example payment application demonstrating real-world usage of Cypress.io End-to-End (E2E) testing, go to the cypress-io/cypress-realworld-app repository.
The following table lists live workflows from various CI providers. These each independently test the contents of this example repository. They run and record using Cypress Cloud with their results displaying centrally under Cypress Cloud ProjectId 4b7344
. Each CI provider shows its build status on its own site:
CI Provider | Workflow | Build Status |
---|---|---|
AppVeyor | appveyor.yml | |
CircleCI | .circleci/config.yml | |
cypress-io/github-action | using-action.yml | |
GitHub Actions | parallel.yml |
You can find all CI results recorded on the Cypress Cloud
This table shows additional documentation-only examples of CI workflows. These are not live examples as in the table above and they may require modification before use.
The Cypress documentation page CI Provider Examples provides some more examples with extensive guides for using Cypress with some of the most popular CI providers.
If you get stuck, here is more help:
- Discord Chat to connect to our community
- Cypress Docs
If you want to experiment with running this project in Continuous Integration, you'll need to fork it first.
After forking this project in Github
, run these commands:
## clone this repo to a local directory
git clone https://github.com/<your-username>/cypress-example-kitchensink.git
## cd into the cloned repo
cd cypress-example-kitchensink
## install the node_modules
npm install
## start the local webserver
npm start
The npm start
script will spawn a webserver on port 8080
which hosts the Kitchen Sink App.
You can verify this by opening your browser and navigating to: http://localhost:8080
You should see the Kitchen Sink App up and running. We are now ready to run Cypress tests.
# launch the cypress test runner
npm run cy:open
shortcut: you can use command npm run local:open
that uses start-server-and-test to start local server and open Cypress. When you close Cypress, the local server is stopped automatically. Similarly you can use npm run local:run
to start the server, run Cypress tests headlessly and close the server.
Follow these instructions to install and write tests in Cypress.
Check out the Contributing Guideline.
- after v1.0.4 at cypress-example-kitchensink/releases
- before at CHANGELOG_OLD.md