在Selenium WebDriverJS中获取WebElement的HTML源代码

时间:2014-06-18 19:01:31

标签: javascript selenium selenium-webdriver

有一个类似的问题(Python中较旧的问题),但这个问题与JS有关。在NodeJS,Mocha环境中使用Selenium进行测试。我想要做的是单击Bootstrap下拉列表并检查HTML以查找更改。我尝试过以下方法:

test.it('should click on all header links',
function() {
    var elem = driver.findElement(By.id('Profile'));
    console.log(elem.getAttribute('innerHTML'));
    console.log(elem.getInnerHtml());
});

两次调用都返回相同的内容。

{ then: [Function: then],
  cancel: [Function: cancel],
  isPending: [Function: isPending] }

我计划将HTML提供给cheerio,以便检查结构更改。感谢任何帮助。

2 个答案:

答案 0 :(得分:3)

我可以通过执行以下操作将HTML检索为字符串。

driver.findElement(By.id('Profile')).getAttribute("innerHTML").then(function(profile) {
    console.log(profile);
});

答案 1 :(得分:0)

我得到了内部 HTML:

  element.getAttribute('innerHTML').then(function (html) {          
                console.log(html)
            })