【问题标题】:TypeError: WebElementCondition did not resolve to a WebElement: [object Object]TypeError:WebElementCondition 未解析为 WebElement:[object Object]
【发布时间】:2016-05-25 16:02:09
【问题描述】:

问题:在特定网页中,我想等待特定元素,然后对该元素执行操作。

使用的代码:

    //Official webapp URL
    browser.driver.get('http://ubet-feature-qa.opal.dnb.com');

    // variable to get the particular element
    var userNameDisplayedOnHomePageField = element(by.css('[ng-if="authSrv.getUserName()"]'));

    //function to wait for the element and return the element availability
    this.isLoggedIn = function(){ 
    browser.driver.wait(protractor.until.elementIsVisible(userNameDisplayedOnHomePageField));
    return userNameDisplayedOnHomePageField.isDisplayed();
        };

预期结果: 它应该返回元素可用性 truefalse

实际结果: 收到以下错误消息,不知道这是为什么..

TypeError:WebElementCondition 未解析为 WebElement: [对象对象]

截图

【问题讨论】:

    标签: selenium-webdriver webdriver jasmine protractor


    【解决方案1】:

    Selenium 条件无法解析 Protractor ElementFinder

    您可以使用protractor.ExpectedConditions 代替protractor.until 条件:

    var EC = protractor.ExpectedConditions;
    var button = element(by.css("..."));
    browser.wait(EC.visibilityOf(button), 1000);
    button.click();
    

    您也可以使用带有 Selenium 条件的 Selenium 元素:

    var until = protractor.until;
    var button = browser.findElement(by.css("..."));
    
    browser.wait(until.elementIsVisible(button), 1000).then(function(button){
       button.click();
    });
    

    另一种方法是从ElementFinder 获取WebElement

    var until = protractor.until;
    var button = element(by.css("..."));
    
    browser.wait(until.elementIsVisible(button.getWebElement()), 1000).then(function(button){
       button.click();
    });
    

    【讨论】:

    • 但是当我使用你的另一种方式(如下所示)时,我得到了同样的错误。 var until = protractor.until; browser.wait(until.elementIsVisible(by.css("...")), 1000).then(function(button){ button.click(); });
    • 我的错,until.elementIsVisible 仅适用于 web 元素而不是定位器。我已经修复了代码示例。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多