使用selenium获取带有类名的元素列表

时间:2016-05-04 16:37:04

标签: javascript selenium selenium-webdriver

如何在javascript中使用selenium获取具有特定类名的元素列表?

我正在搜索类message_body的所有元素。我想要一个包含所有具有该类的元素的数组。

driver.findElements(By.className("message_body"))不起作用,它似乎返回了其他内容。

如何获取此列表?

2 个答案:

答案 0 :(得分:1)

以下是从元素列表中获取文本的示例:

driver.findElements(By.className("message_body")).then(function(elements){
    elements.forEach(function (element) {
        element.getText().then(function(text){
            console.log(text);
        });
    });
});

答案 1 :(得分:0)

所以,我使用的是较旧版本的Selenium,v2.47.1,但我在driver.findElements(By.className("someClass"))不够的时候使用的是driver.findElements(By.xpath("/path/to/[@class='someClass']"))。这将返回List<WebElement>。如果我没记错的话,By.xpath比某些浏览器上的其他选项慢一点,但不是很多......