【发布时间】:2015-11-03 00:15:09
【问题描述】:
我正在使用守夜人“0.8.6”。根据页面上的文档,我创建了一个 pages/login.js 文件并将目录添加到配置文件中:
module.exports = {
url: function() {
return this.launchUrl;
}
};
文档中提到了this.api,但这不是客户端/浏览器的属性。不过,this.launchUrl 显然是可用的。
我更改了现有测试以使用它:
module.exports = {
'Login page has a login button' : function (browser) {
browser
.url(browser.page.login().url())
.waitForElementVisible('body', 10000)
.assert.containsText('button', 'SIGN IN')
.end();
}
}
测试现在失败。 .url 尝试使用data:, 打开 selenium,而不是 this.launchUrl 的值,即 localhost:3000。
页面对象显然是在登录测试的上下文中评估的,所以页面对象中的 this 应该有 this.launchUrl。潜入源代码,我发现其中还有页面包装器对象,不知何故。
如何在 0.8.6 中正确使用创建和使用页面对象?
【问题讨论】: