java - 如何使用 Selenium 迭代页面、查找标题文本并验证文本?

标签 java selenium

我正在使用 Selenium 和 Java 编写一个脚本。我想遍历页面的开头,该页面有一个下一个按钮,可以将您带到下一页。

找到标题文本并决定是否要单击完成或使用垃圾按钮删除标题标题。如果我将 headers.getText 与存储在数组字符串中的值相匹配,则单击“完成”,否则单击“垃圾桶”。

页面侧面有一个下一个按钮,可以浏览具有不同文本标题的所有页面。我在匹配 headers.getText 的数组字符串时遇到问题,并且实际上遍历了所有/下一页。

这是我的脚本:

seriesHeader 通过 xpath 跟随 pagefactory:

  String offers[] = { "Example1", "Example2", "Example3", "Example4",
        "Example15", "Example6", "Example7", "Example8" };
String sp=seriesHeader.getText();
System.out.println("SP1: " + sp);

   for (String offer : offers) {
    sp = seriesHeader.getText();
    System.out.println("Offer: " + offer);
    if (sp.equals(offer)) {
        Thread.sleep(3000);
        completeSeriesProfile.click();
        System.out.println("SP2: " + sp);
        System.out.println("Offer2: " + offer);}
    else if (!sp.equals(offer)) {
        Thread.sleep(3000);
        trashButton.click();
        confirmTrashButton.click();
        System.out.println("SP3: " + sp);
        System.out.println("Offer3: " + offer);} 
    else {nextButton.click();}}}

最佳答案

请找到代码示例,这将根据您的 xpath 单击标题,

String previousURL = driver.getCurrentUrl();
for(int i=0; i<offers.lenth ; i++)
{

driver.findElement(By.xpath(offers[i])).click();
//Add wait if required
driver.get("previousURL")
}

关于java - 如何使用 Selenium 迭代页面、查找标题文本并验证文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58242498/

相关文章:

java - 通过 REST 的 Spring JPA

java - 在java中的接口(interface)方法中抛出多个异常

javascript - WebdriverIO : Unable to use . getAlertText() 方法 "Unresolved function or method getAlertText()"

python - Selenium 在使用 actionchain().move 然后 actionchain.click 或 mouse_up 时挂起

python - 使用 selenium 和 python 将文本发送到 ace 编辑器

java - 安装 org.apache.commons.io?

java - 如何使用 JsonReader 处理 URL 以及 JsonObject 和 JsonArray 之间的关系

java - 我不明白如何在线程上使用等待和通知

java - Selenium Webdriver,如何验证 url 中的字符串

firefox - selenium 和 Web 自动化测试 : how to run large volumn stress tests