【问题标题】:Property of window is undefined in cypress赛普拉斯中未定义窗口的属性
【发布时间】:2018-07-24 10:31:42
【问题描述】:
我正在使用 Cypress 和 Meteor。
我需要窗口上的Meteor 对象来调用Meteor.loginWithPassword。
我想用它来跳过每次使用 UI 登录。
我尝试了以下方法,但 Meteor 运行时不在窗口上。
cy.window()
.then((window) => {
console.log(window.Meteor);
});
【问题讨论】:
标签:
javascript
testing
cypress
【解决方案1】:
试试这个:
cy.window().its('Meteor');
这将等到Meteor 属性存在于window 对象上。
或者,如果您想在 Meteor 属性存在后对其进行操作,请使用 .then():
cy.window().its('Meteor').then(meteor => {
console.log(meteor);
// do things
});
.its() 将尝试从 Cypress 包装的对象(在本例中为 window 对象)获取属性,并将重试直到属性存在或命令超时。