/cypress-example-kitchensink

This is an example app used to showcase Cypress.io testing.

Primary LanguageHTML

Kitchen Sink renovate-app badge

kitchensink

This is an example app used to showcase Cypress.io testing. The application uses every API command in Cypress for demonstration purposes. Additionally this example app is configured to run tests in various CI platforms. The tests are also heavily commented. For a full reference of our documentation, go to docs.cypress.io.

To see the kitchen sink application, visit example.cypress.io.

CI status

CI Build status basic config file full parallel config
AppVeyor AppVeyor CI appveyor.yml
Azure CI Build Status basic/azure-ci.yml
Buildkite Buildkite CI .buildkite/pipeline.yml
Circle Circle CI basic/circle.yml circle.yml
Codeship Pro Codeship Pro CI basic/codeship-pro
GitLab GitLab CI basic/.gitlab-ci.yml .gitlab-ci.yml
Heroku CI basic/app.json
Jenkins basic/Jenkinsfile Jenkinsfile
Semaphore Semaphore CI
Shippable Shippable CI shippable.yml
Travis Travis CI basic/.travis.yml .travis.yml

You can find all CI results recorded on the Cypress Dashboard

Help + Testing

If you get stuck, here is more help:

1. Fork this repo

If you want to experiment with running this project in Continous 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.

2. Install & write tests in Cypress

Follow these instructions to install and write tests in Cypress.

Contributing

Check out the Contributing Guideline.

Changelog

1.0.4 - (12/05/18)

  • update image placeholder links to https
  • update cy.trigger example
  • add cy.request example with query params
  • update deps

1.0.3 - (12/05/18)

  • update image placeholder links to https
  • update cy.trigger example
  • add cy.request example with query params
  • update deps

1.0.2 - (06/28/18)

  • updated dependencies
  • add Cypress.Screenshot.defaults test
  • improvements to build and deploy process
  • bump to node 8

1.0.1 - (05/14/18)

  • updated README to link to correct examples folder
  • added assertion to prevUntil test

1.0.0 - (04/13/18)

  • split example_spec into seperate files
  • convert all JS from ES5 -> ES6
  • update all code content to match actual specs
  • move all Cypress API examples into 1 page
  • have nav be active when visiting page
  • add GitHub link to repo in main nav
  • add link to docs from every header
  • general grammar and link fixes

0.8.3 - (12/19/17)

  • add platform check to cy.exec() example
  • fix typo

0.8.2 - (11/30/17)

  • eslint tests and js script

0.8.1 - (10/16/17)

  • updated .prev html to match test
  • added contributing doc

0.8.0 - (09/10/17)

  • updated for cypress 0.20.0
  • added new cy commands
  • update support files for new scaffolding

0.7.0

  • new traversal commands

0.6.2

  • fix flaky location calls

0.6.1

  • remove .only

0.6.0

  • added stubs, spies, clocks example, fix cy.readFile

0.5.3

  • missing var

0.5.2

  • bump up default config values

0.5.1

  • prevent file server caching

0.5.0 - (09/01/16)

  • renamed Fixtures section to Files
  • added examples for writeFile
  • added example for readFile
  • added examples for using modifier keys on cy.type
  • fixed some formatting

0.4.2

  • rename commandTimeout -> defaultCommandTimeout

0.4.1

  • remove spacejam visit, use https

0.4.0

  • added cy.screenshot example

0.3.0

  • added cy.exec() command examples

0.2.3

  • fix for clearing 3rd party cookies after visit

0.2.2

  • removed methods on Cypress.Cookies

0.2.1

  • removed selenium references

0.2.0

  • added examples of new cypress cookie commands

0.1.5

  • removed relative cy.visit which causes errors on new projects

0.1.4

  • updated node version to 5.10.0

0.1.3

  • renamed visitTimeout option to pageLoadTimeout

0.1.2

  • updated links to be https

0.1.1

  • added cy.reload(true) example

0.1.0

  • initial release