Selenium从页面

时间:2018-03-26 14:17:00

标签: javascript selenium selenium-webdriver hyperlink selenium-chromedriver

在我的程序中,我能够找到该元素并单击它,所以我知道我有正确的元素,但在尝试获取链接文本时,它返回Promise { <pending> }而不是链接,我使用此代码截至目前

target = driver.wait(until.elementLocated(By.partialLinkText("iptlogin"))).getText();

如果有帮助,它也是电子邮件中的超链接

2 个答案:

答案 0 :(得分:2)

target = driver.wait(until.elementLocated(By.partialLinkText("iptlogin"))).getAttribute("src");

试试这个:

答案 1 :(得分:2)

如果您使用的是async js selenium webdriver,则必须等到文本可用。看起来像:

driver.wait(until.elementLocated(By.partialLinkText("iptlogin"))).then(function() {
    //... Element is Available in DOM

    driver.findElement(By.partialLinkText("iptlogin")).getAttribute("href").then(function(resolvedLink) {
        //Here the Link is available in Webdriver-Client
         console.log("Link HREF: "+resolvedLink);
    });

    driver.findElement(By.partialLinkText("iptlogin")).getText().then(function(resolvedText) {
        //Here the Text is available in Webdriver-Client
         console.log("Link Text: "+resolvedText);
    });
});