window 的 属性 在赛普拉斯中未定义

Property of window is undefined in cypress

我正在使用 Cypress 和 Meteor。

我需要 window 上的 Meteor 对象来调用 Meteor.loginWithPassword

我想用它来跳过每次使用 UI 登录。 我尝试了以下方法,但 Meteor 在运行时不在 window 上。

cy.window()
  .then((window) => {
      console.log(window.Meteor);
   });

试试这个:

cy.window().its('Meteor');

这将等到 Meteor 属性 存在于 window 对象上。


或者,如果您想对 Meteor 属性 执行某些操作,请使用 .then():

cy.window().its('Meteor').then(meteor => {
    console.log(meteor);
    // do things
});

.its() 将尝试从 Cypress 包装的对象中获取 属性,在本例中为 window 对象,并将重试直到 属性 存在或命令超时。