微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

TestCafe 是否支持页面对象中的部分如 Nightwatch 那样?如果没有,我们如何在 TestCafe 中实现这一点?

如何解决TestCafe 是否支持页面对象中的部分如 Nightwatch 那样?如果没有,我们如何在 TestCafe 中实现这一点?

我们拥有丰富的用户界面,其中包含大量网页元素,并且用户界面上的多级元素分为多个部分。作为新测试自动化框架评估的一部分,我想看看我们是否可以使用 testcafe。 目前我们正在使用 Nightwatch(Java Script)框架,它支持页面对象中的部分。现在我们正在转向 testcafe (Java Script) 框架。谁能给我一个例子,说明我们如何使用 testcafe 维护 PageObjects 中的 SECTIONS ?如果 testcafe 不支持,我们如何在 testcafe 中实现相同的功能
带部分的 NightWatch 页面对象示例: Multiple level of sections in page_objects in nightwatch.js

解决方法

在 TestCafe 中,页面模型只是一个 JavaScript 类 (https://devexpress.github.io/testcafe/documentation/guides/concepts/page-model.html#page-model-example),因此您可以创建多个嵌套类来反映您的页面结构。

例如,如果页面上有标题、工具栏和列表对象,您可以为您的页面模型使用以下代码:

class ListModel {
    getItem(i) {
        //find an item
    }

    constructor (selector) {
        this.selector = selector;
    }
}

class ToolbarModel {
    action(){
    //perform an action        
    }

    constructor (selector) {
        this.selector = selector;
    }
}


class PageModel {    
    constructor (selector) {
        this.selector = selector;
        this.title = selector.find('#tile');
        this.toolBar = new ToolbarModel(selector.find('#toolbar'));
        this.list = new ListModel(selector.find('#list'));

    }

}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。