本文介绍了以前来自json-fixture的Cypress加载数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试通过Cypress中的Fixture从JSON文件检索一些数据,但根本无法识别这些数据。
before(() => {
cy.fixture('example').then(function (data) {
console.log("this", data.user);
})
})
控制台输出用户,这正在工作。
但之后我有一个步骤:
Given("I check data", () => {
console.log("this", this.data.user);
});
这里的数据是未定义的。
我还尝试在before
内部设置:
this.data = data
,但没有帮助。我还尝试使用beforeEach
,但没有成功。
推荐答案
不是黄瓜用户,但在素柏测试中,您只能通过将回调设置为函数而不是箭头函数来访问this
Given("I check data", function() {
console.log("this", this.data.user);
});
我认为您可能还需要为数据添加别名
before(() => {
cy.fixture('example')
.then(function (data) {
console.log("this", data.user)
})
.as('data');
}
请注意,Cypress会在两次测试之间清除别名,因此您需要使用beforeEach()
而不是before()
。
这篇关于以前来自json-fixture的Cypress加载数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!