以前来自json-fixture的Cypress加载数据

Cypress load data from json - fixture before(以前来自json-fixture的Cypress加载数据)
本文介绍了以前来自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加载数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

How to minify json response?(如何缩小JSON反应?)
Error in render: TypeError: Cannot read property '' of undefined[Vue 警告]:渲染错误:TypeError: Cannot read property \\'object\\' of undefined这个...
Only want to compare TIME values MomentJS(只想比较时间值MomentJS)
How to access specific record from fixture/*.json file into sepcific test case in cypress?(如何将Fixture/*.json文件中的特定记录访问到Cypress中特定的测试用例中?)
How to have a external JSON config file in react jsx(如何在React JSX中拥有外部JSON配置文件)
Visualize a nested JSON structure(可视化嵌套的JSON结构)