Javascript 从另一个文件(Cypress,JS)访问变量会导致重复的测试运行
我正在尝试从另一个文件访问常量变量。结构如下: 我有welcome.spec.js,在这里我声明了一个常量变量,如下所示,并将其导出。我正在使用此规范的值Javascript 从另一个文件(Cypress,JS)访问变量会导致重复的测试运行,javascript,cypress,Javascript,Cypress,我正在尝试从另一个文件访问常量变量。结构如下: 我有welcome.spec.js,在这里我声明了一个常量变量,如下所示,并将其导出。我正在使用此规范的值 context('Welcome', () => { // Generating a random userCount value for further verifications. const userCount = (Math.round(Math.random()*10)) module.exports = {use
context('Welcome', () => {
// Generating a random userCount value for further verifications.
const userCount = (Math.round(Math.random()*10))
module.exports = {userCount}
beforeEach(() => {
cy.visit('/')
cy.clearCookies()
})
我还有payments.spec.js需要使用完全相同的值
context('Payment', () => {
const {userCount} = require ('../welcome/welcome.spec')
beforeEach(() => {
cy.visit('/')
cy.clearCookies()
})
在一些情况下,我需要根据随机生成的值做出一些断言。这个结构可以工作,但并不像我预期的那样。结果如下:
如您所见,在支付下,它也会从欢迎导入我的所有测试。我有重复测试+随机生成的值在这两个欢迎测试之间不同
我的尝试:
- 已将常量声明移出
上下文
- 试图创建自定义命令(../support/commands),但出现了如下错误:userCount不是函数或未定义userCount。此外,我还尝试在Cypress的支持文件夹下使用index.js
注意。将常量导出到上下文之外。这是您在导入它时在其他文件中访问它的方式(ES6) 欢迎使用。spec.js
const userCount = (Math.round(Math.random()*10))
context('Welcome', () => {
// Generating a random userCount value for further verifications.
module.exports = {userCount}
beforeEach(() => {
cy.visit('/')
cy.clearCookies()
})
import {userCount} from "../welcome/welcome.spec";
payments.spec.js
const userCount = (Math.round(Math.random()*10))
context('Welcome', () => {
// Generating a random userCount value for further verifications.
module.exports = {userCount}
beforeEach(() => {
cy.visit('/')
cy.clearCookies()
})
import {userCount} from "../welcome/welcome.spec";
我正在尝试使用固定装置。如果有效,我会发布:)