Skip to content
Switch branches/tags

Cypress OTP

Enter a valid OTP token in your UI tests

Build Status Build Cron Renovate enabled Commitizen friendly Open Source Love npm

Cypress OTP

Use this plugin to insert a valid OTP token in a Cypress test.


npm i -D cypress-otp
# or
yarn add -D cypress-otp

then open your cypress/plugins/index.js file and register a new task

module.exports = on => {
  on("task", {
    generateOTP: require("cypress-otp")

How to use it

To get an OTP code

cy.task("generateOTP", "YOUR_SECRET").then(token => {

Take a look at the example test source code.


  • the plugin saves the last used secret so you can avoid to pass it every time. You can even set it at the beginning of your test suite
before(() => {
  cy.task("generateOTP", "YOUR_SECRET");

and then consume the generateOTP task

cy.task("generateOTP").then(token => {


Thanks goes to these wonderful people (emoji key):

Stefano Magni
Stefano Magni

💻 ⚠️

This project follows the all-contributors specification. Contributions of any kind welcome!