Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

153
Views
Cómo escribir texto dinámicamente en Cypress

Quiero ingresar texto dinámico en Cypress, por lo que en cada ejecución, el campo de nombre no tendrá una entrada repetida, por ejemplo, nombre1, nombre 2...

Así que en el archivo js tendría algo como

 And("I enter a name", () => { portalPage.roleName().type("Cypress admin" + 1, { force: true }) })

Cualquier ayuda es apreciada.

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

Entre ejecuciones, debe escribir el último número utilizado en un dispositivo,

 And("I enter a name", () => { cy.fixture('name-num.json').then(num => const next = num +1; portalPage.roleName().type(`Cypress admin ${next}`, { force: true }) cy.writeFile('cypress/fixtures/name-num.json', next.toString()) })

Si hace esto varias veces en la misma ejecución, cy.fixture no funcionará porque almacena en caché el valor que lee.

En su lugar, use readFile()

 And("I enter a name", () => { cy.readFile('cypress/fixtures/name-num.json').then(num => const next = num +1; portalPage.roleName().type(`Cypress admin ${next}`, { force: true }) cy.writeFile('cypress/fixtures/name-num.json', next.toString()) })
about 4 years ago · Juan Pablo Isaza Report

0

Si está buscando entradas aleatorias, entonces lodash .random() generará un número aleatorio desde 0 hasta la entrada.

 // will generate random number between 0 and 9999 portalPage.roleName().type(`Cypress admin${Cypress._.random(9999)}`, { force: true })
about 4 years ago · Juan Pablo Isaza Report

0

Si solo necesita que los valores sean diferentes dentro de la misma especificación, puede almacenar el valor en una variable de entorno de Cypress. La variable de entorno no se borrará hasta que la especificación haya terminado de ejecutarse.

 And("I enter a name", () => { // set the environment variable to current value + 1, or if it hasn't been set, 1. Cypress.env("myNumber", Cypress.env("myNumber")++ ?? 1); // use the environment variable portalPage.roleName().type("Cypress admin" + Cypress.env("myNumber"), { force: true }); })
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!