web-dev-qa-db-fra.com

Cypress Comment stocker des constantes globales dans un fichier qui peut être utilisé dans tous les fichiers de spécifications?

Je cherche un moyen de stocker des constantes globales dans un fichier qui pourrait être utilisé dans tous mes fichiers de spécifications. Quelqu'un peut-il aider?

6
Ryan Parker

Utilisez le fichier cypress.json Qui se trouve dans la racine de votre projet.

https://docs.cypress.io/guides/references/configuration.html

Une fois que vous avez défini certaines variables env, vous pouvez les référencer à partir de vos spécifications comme ceci: Cypress.env('your_var');

8
TJH

Le lien suivant peut vous aider à définir et à obtenir facilement des variables env. https://docs.cypress.io/api/cypress-api/env.html#Syntax

describe('My First Test', function() {
  it('it set value to global variable', function() {
    Cypress.env('some_variable', "hello")
  })
  it('it get value to global variable', function() {
    expect(Cypress.env('some_variable')).to.equal('hello')
  })
})
4

Variables globales - sonnent comme des appareils.

Voir fichier d'écriture - JSON - Écrire les données de réponse dans un fichier de fixture

cy.request('https://jsonplaceholder.typicode.com/users').then((response) => {
  cy.writeFile('cypress/fixtures/users.json', response.body)
})

// our fixture file is now generated and can be used
cy.fixture('users').then((users) => {
  expect(users[0].name).to.exist
})

Voulez-vous partager pourquoi vous voulez le faire?
On dirait que ça peut être intéressant.

2
Richard Matsen

Vous pouvez utiliser des variables d'environnement stockées dans cypress.json ou cypress.env.json .

cypress.json

{
  "env": {
    "myVar": "value..."
  }
}

cypress.env.json

{
  "myVar": "value..."
}

Vous pouvez utiliser votre variable d'environnement en utilisant Cypress.env ('myVar') .

const myVar = Cypress.env('myVar')

Vous pouvez consulter vos variables d'environnement dans l'onglet Paramètres du cyprès runner.

cypress runner Settings

1
Bienvenido David