Plugins

Improve this doc

Plugins provide a way to support and extend the behavior of Cypress. Follow these instructions to submit your own plugin.

Looking for the API docs?

Check out our Plugins Guide or our API docs for writing a plugin.

Plugin Types

Preprocessors

  • Browserify

    Watches and bundles your spec files via browserify. This is the default preprocessor that's built into Cypress.

    #browserify
  • Cucumber

    Run cucumber/gherkin-syntaxed specs with cypress.io

    #file-watcher #cucumber
  • cypress-app-watcher-preprocessor

    Reruns Cypress tests when the backend server restarts

    #file-watcher
  • ESLint

    Runs linting via ESLint on your spec files as they are loaded and display errors in the console

    #eslint
  • Watch

    Watches your spec files and serves them as-is. Useful as an example reference or if you don't need transpiling/bundling.

    #file-watcher
  • Webpack

    Watches and bundles your spec files via webpack.

    #webpack

Development Tools

  • Applitools

    Fast, easy and reliable visual UI testing with Cypress

  • CircleCI Cypress Orb

    Official Cypress Orb for CircleCI configuration.

    #continuous-integration
  • cypress-dark

    Several color themes for Cypress test runner

    #theme
  • Docker

    Docker images providing all the dependencies to run Cypress in CI including browsers.

    #docker #continuous-integration
  • ESLint

    ESLint plugin that sets globals for writing tests in Cypress.

    #eslint
  • Percy

    Visual regression testing for Cypress tests with Percy.

    #screenshots #visual regression
  • TypeScript

    Official TypeScript definitions for the Cypress API.

    #typescript

Custom Commands

  • cyphell

    Converts WDIO automation tests to Cypress.

    #wdio
  • Cypress Image Snapshot

    Catch visual regressions and compare image diffs locally and in Cypress Dashboard.

    #image-diff #snapshot
  • Cypress Visual Regression

    Adds visual regression testing to Cypress

    #image-diff #snapshot
  • cypress-axe

    Helps test your applications for accessibility issues using axe-core.

    #accessibility #a11y
  • cypress-capybara

    Several Capybara finders re-implemented in Cypress to locate UI elements by their text and labels.

    #testing-library #capybara
  • cypress-firebase

    Custom commands for Firebase including Authentication and Database communication (both Real Time Database and Firestore).

    #firebase #database #commands
  • cypress-graphql-mock

    Adds commands for executing a mocked GraphQL server using only the client

    #graphql
  • cypress-on-rails

    Rubygem for using cypress.io with Ruby on Rails applications

    #ruby-rack #ruby-on-rails
  • cypress-pipe

    Create custom commands using plain-old functions. Similar to `cy.then` but with retriability.

    #commands
  • cypress-plugin-snapshots

    Plugin for snapshot tests in Cypress.io. Same API as Jest, but with graphical interface for reviewing and approving changes.

    #snapshot
  • cypress-testing-library

    🐅 Simple and complete custom Cypress commands and utilities that encourage good testing practices.

    #testing-library #dom-testing-library #react-testing-library
  • cypress-xpath

    Adds XPath command to Cypress.io test runner

    #xpath #commands
  • cypressautomocker

    Allow recording API results and replaying the APIs as a mock server.

    #routing #mock
  • PickleJS

    An addition to the Cucumber plugin, featuring a collection of phrases you can use for common actions (ex: "I click on an ", "I should see an ")

    #cucumber #collection #actions #commands

Reporting