在硒中绕过验证码

时间:2011-12-16 07:05:03

标签: java unit-testing firefox selenium

我登录网站时有很多自动化测试运行我是单元测试,但我不能(没有权限)从登录页面中删除capcha。

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

谢谢!

2 个答案:

答案 0 :(得分:5)

以下代码段:

  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();
    
  5. 您可以使用类似的代码加载登录页面,提示测试人员输入CAPTCHA,然后继续测试。

答案 1 :(得分:0)

import java.util.Scanner;

public class UserInputExample(){
    Scanner inputText = new Scanner(System.in);
    public static void main(String[] args ){
        String search= inputText.next();
    }
}