【问题标题】:Load function from support folder cypress从支持文件夹 cypress 加载函数
【发布时间】:2020-07-17 09:44:30
【问题描述】:

在我的支持文件夹中,我有一个名为 action 的文件夹。其中有一个名为 login-action.js 的文件。该文件中的代码如下所示:

class LoginActions{   
     login(usernameField, passwordField, username, password) {
        cy.get(usernameField).first().type(username);
        cy.get(passwordField).last().type(password);
     }
    }
    export default new LoginActions();

现在我想在测试中使用这个登录功能

loginActions.login('[data-test=username]', '[data-test=password]', this.user.username, this.user.password);

这就是我在测试中的称呼。但不知何故,这是行不通的。它说登录是未定义的。

【问题讨论】:

    标签: cypress end-to-end


    【解决方案1】:

    我不认为你可以像现在这样导出新对象,我通常只导出这样的类:

     export default LoginActions();
    

    您是否像这样导入和创建新对象 loginActions:

    import LoginActions from '../../../support/pageObjects/{loginActionsPage}'
    const loginActions = new LoginActions();
    

    然后你可以:

    loginActions.login('[data-test=username]', '[data-test=password]', this.user.username, this.user.password);
    

    【讨论】:

    • 现在它说没有构造函数。我的 LoginActions 类中是否需要一个构造函数,我该怎么做。我想我从来没有在 JavaScript/cypress 中创建过构造函数
    • 只需在 login-action.js 中的类 LoginActions 前添加“export”
    猜你喜欢
    • 2022-12-09
    • 2020-12-21
    • 2019-12-18
    • 2013-09-18
    • 1970-01-01
    • 2019-02-26
    • 1970-01-01
    • 1970-01-01
    • 2021-04-02
    相关资源
    最近更新 更多