【发布时间】:2017-04-27 13:50:51
【问题描述】:
我安装了 node.js 和量角器。我有使用 selenium-webdriver 的经验,但量角器让我发疯了!!!我对javascript也不是很熟悉。
这是我的代码的样子:
describe('My app', function() {
var result = element(by.id('result-name'));
var enterBtn = element(by.id('enter'));
var clearFieldBtn = element(by.id('clear-field');
it('should bring up components on load', function() {
browser.get(`http://localhost:${process.env.PORT}`);
browser.wait(until.titleContains('Sample App'), 500);
browser.wait(until.presenceOf(browser.element(by.id('my-test-app'))), 500);
expect(enterBtn).isPresent;
});
it('result should equal username', function () {
browser.get(`http://localhost:${process.env.PORT}`);
expect(clearFieldBtn).isPresent;
expect(result.getText()).toEqual('John Smith'); //both tests pass without this line of code
});
});
最后一行“expect(result.getText()).toEqual('John Smith');”给我一个错误。我明白了:
expect(...).toEqual is not a function
任何帮助将不胜感激。我花了几个小时试图找到解决方案并尝试不同的事情。
我还想在 api 文档中实现 isPresent 函数,它是这样的:expect($('.item').isPresent()).toBeTruthy();
我尝试过:
expect(clearFieldBtn).isPresent().toBeTruthy();
但我知道 isPresent 不是函数...
【问题讨论】:
-
您的标题具有误导性。问题/错误不是关于
getText(),而是关于你的茉莉花功能toEqual、toContain等。 -
另外,您能否发布您的配置,您使用的是什么测试库?
标签: javascript selenium-webdriver protractor automated-tests