代码之家  ›  专栏  ›  技术社区  ›  Ozzy Walsh

Cypress中未定义窗口属性

  •  1
  • Ozzy Walsh  · 技术社区  · 6 年前

    我正在用柏树和流星。

    我需要 Meteor 要调用的窗口上的对象 Meteor.loginWithPassword .

    我想使用它来跳过每次登录时使用UI的过程。 我试过以下方法,但流星运行时不在窗口。

    cy.window()
      .then((window) => {
          console.log(window.Meteor);
       });
    
    1 回复  |  直到 6 年前
        1
  •  1
  •   Joshua Wade Abel    6 年前

    试试这个:

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

    这会一直等到 Meteor 属性存在于 window 对象。


    或者,如果你想用 流星 属性一旦存在,使用 .then() :

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

    .its() 将尝试从由Cypress包装的对象获取属性,在这种情况下, 窗口 对象,并将重试,直到属性存在或命令超时。