如何在selenium中打印List Array的最后一个字符串值?

时间:2017-10-06 13:22:35

标签: java list selenium arraylist

有多个String元素具有相同的xpath。我使用List<WebElement>机制在页面对象模型中存储元素。在我的测试用例中,我想打印列表的最后一个字符串值。

以下是存储在存储库中的元素代码。

public Collection<WebElement> UpdatedMessageList(){
    Collection<WebElement> element=driver.findElements(By.xpath("//p[@class='msg-paragraph-panel msg-paragraph-msg ng-binding']"));
    return element;
}

任何人都可以帮我打印测试用例中的最后一个字符串值吗?

2 个答案:

答案 0 :(得分:1)

findElements会返回List,而不是任何旧的Collection,因此您可以使用位置get(int)

public WebElement UpdatedMessageList(){
    List<WebElement> elements = 
        driver.findElements(By.xpath(
            "//p[@class='msg-paragraph-panel msg-paragraph-msg ng-binding']"));
    if (elements.isEmpty()) {
        return null; // Or throw some meaningful exception
    }
    return elements.get(elements.size() - 1);
}

答案 1 :(得分:0)

我非常确定上面的代码会给你编译错误,不确定你是否使用Java 9而且有些东西已经改变了。

另外,不要使用genertic collection class <div class="col-md-6 nopadding cinfo"> <div class="clientinfo"> <h3>IVEY</h3> <p>Clarksville, TN</p> <div class="social-icons-clients"> <a href="#"><span class="icon-sprite sprite-ig">&nbsp;</span></a> <a href="#"><span class="icon-sprite sprite-fb">&nbsp;</span></a> <a href="#"><span class="icon-sprite sprite-gp">&nbsp;</span></a> <a href="#"><span class="icon-sprite sprite-sc">&nbsp;</span></a> <a href="https://twitter.com/contracoda" target="_blank"> <span class="icon-sprite sprite-tw">&nbsp;</span> </a> </div> </div> </div> 返回findElements

List of WebElements