【发布时间】:2018-07-25 13:41:25
【问题描述】:
我创建了 test.page.js,我在页面上设置了元素。我想找到添加按钮。这是我的代码:
import Page from './page';
class TestPage extends Page {
get addButton() {
return browser.element('#add-button > a');
}
getAddButton() {
return this.addButton.getText();
}
根据文档,以下示例应该可以工作,但不能。它返回 待处理的承诺:
import Page from './page';
class LoginPage extends Page {
get username() { return browser.element('#username'); }
在我的 test.spec.js 文件中,我使用 chai 作为对 Chai 库的承诺扩展来断言这个元素:
import testPage from '../pageobjects/test.page';
it('should validate if Add button exists', (done) => {
testPage.getAddButton().should.eventually.be.equal('Create a new thing').notify(done);
});
它可以在 Chrome 上运行,但在 Firefox 或 Safari 上失败。我认为我在定位元素方面做错了,我的版本与文档版本不同。有人可以帮忙吗?
【问题讨论】:
标签: javascript selenium-webdriver automated-tests es6-promise webdriver-io