从命令使用赛普拉斯变量
Use Cypress Variable From Command
我在 cypress 中有一个实用命令:
Cypress.Commands.add('generateDummyText', (length: number, delay?: number) => {
const wordLength = 5;
const lorem = new LoremIpsum({
wordsPerSentence: {
max: wordLength,
min: wordLength,
},
words: ['word1', 'word2', 'word3', 'word4', 'word5'],
});
const words = lorem.generateWords(Math.ceil(length / wordLength));
cy.wrap(words).as('dummyText');
});
it('test', () => {
// Generate dummy text
cy.generateDummyText(280);
// I want to type the "dummyText variable here"
cy.get('myinput').type()
});
如何做到这一点?我不需要使用自定义的 cypress 命令,但我更愿意使用一个。期待您的回复!
您可以通过以下方式访问它:
cy.type(this.dummyText)
另一种选择是使用 faker 为您生成随机单词。
将 faker 模块添加到你的项目中,然后你可以这样做:
const faker = require("faker");
.type(faker.random.words(5));
而不是为其使用自定义命令
您可以通过别名获取值:
cy.generateDummyText(280);
cy.get("@dummyText").then(dummyText => {
cy.get('myinput').type(this.dummyText)
})
或者直接通过命令return取值:
cy.generateDummyText(280).then(dummyText => {
cy.get('myinput').type(this.dummyText)
})
我在 cypress 中有一个实用命令:
Cypress.Commands.add('generateDummyText', (length: number, delay?: number) => {
const wordLength = 5;
const lorem = new LoremIpsum({
wordsPerSentence: {
max: wordLength,
min: wordLength,
},
words: ['word1', 'word2', 'word3', 'word4', 'word5'],
});
const words = lorem.generateWords(Math.ceil(length / wordLength));
cy.wrap(words).as('dummyText');
});
it('test', () => {
// Generate dummy text
cy.generateDummyText(280);
// I want to type the "dummyText variable here"
cy.get('myinput').type()
});
如何做到这一点?我不需要使用自定义的 cypress 命令,但我更愿意使用一个。期待您的回复!
您可以通过以下方式访问它:
cy.type(this.dummyText)
另一种选择是使用 faker 为您生成随机单词。 将 faker 模块添加到你的项目中,然后你可以这样做:
const faker = require("faker");
.type(faker.random.words(5));
而不是为其使用自定义命令
您可以通过别名获取值:
cy.generateDummyText(280);
cy.get("@dummyText").then(dummyText => {
cy.get('myinput').type(this.dummyText)
})
或者直接通过命令return取值:
cy.generateDummyText(280).then(dummyText => {
cy.get('myinput').type(this.dummyText)
})