gpt4 book ai didi

angularjs - isElementPresent 的简单 Protractor 测试失败,定位器策略不受支持

转载 作者:行者123 更新时间:2023-12-04 13:08:21 26 4
gpt4 key购买 nike

我的测试:

it('should allow login', function() {
browser.get('index.html');

$('#username').sendKeys('administrator');
$('#password').sendKeys('password');
$('#login').click();

var logout = $('#logout');
expect($p.isElementPresent(logout)).to.eventually.be.true;
});

但这会出错:
Error: Unsupported locator strategy: click
at Error (<anonymous>)
at Function.webdriver.Locator.createFromObj (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/locators.js:97:9)
at Function.webdriver.Locator.checkLocator (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/locators.js:111:33)
at webdriver.WebDriver.findElements (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:805:31)
at webdriver.WebDriver.isElementPresent (/usr/local/lib/node_modules/protractor/node_modules/selenium-webdriver/lib/webdriver/webdriver.js:787:29)
at Protractor.isElementPresent (/usr/local/lib/node_modules/protractor/lib/protractor.js:476:22)
at /Users/pschuegr/wt/client/e2e/login_test.js:26:15

奇怪的是,它指向的是 isElementPresent 行,而不是点击的那一行。我对 webdriver 很陌生,所以如果我错过了一些明显的东西,我深表歉意。我正在使用 mocha 框架(这意味着 Protractor 的金丝雀版本)运行,fwiw。

任何想法表示赞赏。

最佳答案

使用最新的 Protractor 版本,您可以将上述答案缩短为以下内容:

expect(element(by.css('#logout')).isPresent()).toBeTruthy();

这样您就不必执行 browser.wait 并减少对 isElementPresent 的调用次数。

关于angularjs - isElementPresent 的简单 Protractor 测试失败,定位器策略不受支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21245418/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com