一尘不染

避开selenium中的capcha

selenium

登录到进行单元测试的站点后,我将运行许多自动化测试,但是我不能(没有权限)从登录页面删除验证码。

有没有什么方法可以使用selenium
2.0,这样我就可以启动例如firefox的WebDriver实例,然后手动执行capcha,然后让WebDriver(我使用服务器的Javajar)从那里“接管”?

谢谢!


阅读 358

收藏
2020-06-26

共1个答案

一尘不染

以下代码段:

  1. 载入BING主页
  2. 提示用户执行搜索
  3. 将搜索结果加载到测试浏览器中后,系统会提示用户按ENTER键
  4. 单击用户搜索的第一个结果链接
        driver.get("http://www.bing.com");

    System.out.println("Loaded BING homepage");
    System.out.println("Search for some term and then press ENTER");

    BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
    reader.readLine();

    System.out.println("Clicking on the first link ...");

    driver.findElements(By.className("sa_wr")).get(0)
          .findElement(By.tagName("a")).click();

    Thread.sleep(3000);

    driver.quit();

您可以使用类似的代码来加载登录页面,提示测试人员输入CAPTCHA,然后继续进行测试。

2020-06-26