1.0.3 β€’ Published 11 months ago

@optimumqa/cypress-store v1.0.3

Weekly downloads
-
License
MIT
Repository
github
Last release
11 months ago

ci

This plugin enables you to store and share values between multiple spec files

Installation

npm install @optimumqa/cypress-store

Usage

Cypress version >= 10

// ./cypress.config.js

import { defineConfig } from 'cypress'

const finalConfig = defineConfig({
  e2e: {
    setupNodeEvents(on, config) {
      // Setup plugins
      config = import('@optimumqa/cypress-store')(on, config)

      return config
    },
  },
})

Cypress version < 10

// ./cypress/plugins/index.js

module.exports = (on, config) => {
  config = require('@optimumqa/cypress-store')(on, config)

  return config
}

Usage

Below is an example saving a token inside one spec, and re-use it inside another.

You can have infinite stores.

Example of setting a new item into 'CommonStore'.

If the store does not exist, it will be automatically created:

// mySpec1.cy.js

cy.task('setItem', {
  storeId: 'MyStoreForUsefulStuff',
  item: {
    name: 'foo',
    value: 'bar',
  },
})

Example of getting an item from a store:

// mySpec2.cy.js

cy.task('getItem', {
  storeId: 'MyStoreForUsefulStuff',
  item: {
    name: 'foo',
  },
}).then((item) => {
  console.log(item) // { name: 'token, value: 'foo' }
  console.log(item.name) // foo
  console.log(item.value) // bar
})

🀝 Contributing

Contributions, issues and feature requests are welcome. Feel free to check issues page if you want to contribute.

Show your support

Please ⭐️ this repository if this project helped you!

πŸ“ License

This project is MIT licensed.

1.0.3

11 months ago

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago

0.1.1

2 years ago