【发布时间】:2016-03-27 18:14:02
【问题描述】:
使用 webdriver-io 建议的页面对象模式,包含包含多个页面共有元素的模块的最佳方式是什么,例如。搜索框还是导航栏?
例如...
我的页面
var basePage = require('./basePage');
var searchModule = require('./searchModule');
var myPage = Object.create(basePage, {
search: { value: Object.create(this, searchModule) },
...
搜索模块
var searchModule = {
searchBox: { get: function() { return browser.element('input#s'); }},
searchFor: { value: function(searchText) {
this.searchBox.setValue(searchText);
browser.keys('Enter');
}}
这行得通,并且允许像这样使用:myPage.search.searchFor('some text');,但这是最好的(甚至是好的)方法吗?
【问题讨论】: