-1

我需要从特定 URL 的页面打开所有链接。如果链接打开,我需要检查页面内容并验证它不包含特定文本。

我使用了基于 selenium 的 Selenide,并尝试了以下方法:

String[] links = null;
int linksCount = 0;
 System.setProperty("webdriver.chrome.driver", "Resources/chromedriver1.exe");
     WebDriverRunner.setWebDriver(new ChromeDriver());   
     driver= WebDriverRunner.getWebDriver();
    open("myURL");
    List<WebElement> linksize =      WebDriverRunner.getWebDriver().findElements(By.tagName("a")); 
    linksCount = linksize.size();
    out.println("Total no of links Available: "+linksCount);
    links= new String[linksCount];
    out.println("List of links Available: ");  
    // print all the links from webpage 
    for(int i=0;i<linksCount;i++)
    {
    links[i] = linksize.get(i).getAttribute("href");
    System.out.println(linksize.get(i).getAttribute("href"));
    } 
    // navigate to each Link on the webpage
    for(int i=0;i<linksCount;i++)
    {
        if(links[i] != null)
            {
                if(!links[i].contains("javascript"))
                {
                    System.out.println(links[i]);
                    driver.navigate().to(links[i]);
                    Selenide.sleep(7);
                    WebElement error = $(Selectors.byText("no information!")); 
                    $(error).shouldNotBe(visible)
                    .shouldNotBe(text("information!"));
                }
            }

    }

我在此链接中使用了相同的解决方案。但是我在检查时遇到了这个异常:

未知错误:未处理的检查器错误:{“code”:-32603,“message”:“无法导航到无效的 URL”}(会话信息:chrome=49.0.2623.87)

org.openqa.selenium.WebDriverException:未知错误:未处理的检查器错误:{“code”:-32603,“message”:“无法导航到无效的 URL”}(会话信息:chrome=49.0.2623.87)(驱动程序信息:chromedriver =2.9.248315,平台=Windows NT 6.1 SP1 x86)(警告:服务器未提供任何堆栈跟踪信息)命令持续时间或超时:4毫秒构建信息:版本:'2.50.1',修订:'d7fc91b',时间: '2016-01-29 19:04:49'

我从这里使用了这个 chrome 驱动程序版本

什么可能会产生此错误?

4

2 回答 2

1

从您发布的错误日志中,可以清楚地看到“无法导航到无效的 URL”。提供有效的网址并检查 - 谢谢

于 2016-03-20T14:54:10.237 回答
1

几乎可以肯定,在您循环浏览链接之前很久,这已经失败了。

以下行将尝试加载明显不是有效的 URL,这完全解释了您遇到的错误。

open("myURL");

大概您打算传入一个名为myURL?

于 2016-03-20T18:13:48.993 回答