如何在Cypress中使用fakerjs

如何在Cypress中使用fakerjs,cypress,ui-testing,faker,Cypress,Ui Testing,Faker,我试图在我的cypress测试中使用fakerjs为我的表单随机生成假数据 我尝试在support/index.js中导出它,但没有成功 有没有标准的方法可以将fakerjs添加到所有cypress规范中,而不是添加到每个规范文件中。首先,在每个规范中导入它有什么问题 也就是说,您可以这样做: cypress/support/index.js: cy.faker=require('faker'); 您的规格: it(`test`,()=>{ const words=cy.faker.lorem

我试图在我的cypress测试中使用fakerjs为我的表单随机生成假数据

我尝试在support/index.js中导出它,但没有成功


有没有标准的方法可以将fakerjs添加到所有cypress规范中,而不是添加到每个规范文件中。

首先,在每个规范中导入它有什么问题

也就是说,您可以这样做:

cypress/support/index.js:

cy.faker=require('faker');
您的规格:

it(`test`,()=>{
const words=cy.faker.lorem.words();
});

我试过了,发现很简单。步骤如下所述

1-要求伪造

const faker = require("faker");
2-用户在您想要的地方这样做

   Variable declaration -> var firstName = faker.Name.findName();
   Use in locator -> cy.get("#firstName").type(firstName);

我希望它能有所帮助:)

这不起作用,当我们调用l cy.faker时,它正在失去对现有选择器的引用,我们可以将它作为实用工具,比如我们有lodash(Cypress.uu)、moment(Cypress.moment)。等等。我不确定“它正在失去对现有选择器的引用”是什么意思。当我尝试使用类似cy.get(“#myinput”)的faker.firstName()),它给了我一个错误,cy没有将有效的输入引用到与
cy.faker
无关的类型,而是与
cy.type
有关。解决
cy.type
错误(可能是因为
cy.get()
没有找到可操作的元素),如果我有简单的文本cy.get(“#myinput”),则可以使用.cy.type().type('abc'),但如果我使用cy.faker.firstName(),则会出现上述错误。无论如何,我可以在没有cy.prefix的情况下实现这一点,比如const faker=require('faker'),并在我的实际语句cy.get('#myinput')。type(faker.firstName())。感谢您提供的线索。请查看以下链接以编写一个好的答案:
For reference javascript :- 
Https://zetcode.com/javascript/fakerjs/

You can use these in cypress :-
npm i faker

const faker = require("faker"); 

let username = faker.name.findName()
let email = faker.internet.email()
let password = faker.internet.password()

Use all these in single specs file.