Web自动化测试中绕开验证码登陆的方式

发表于:2017-1-10 11:26

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:钉子尹    来源:51Testing软件测试网采编

  Web自动化测试中登陆需验证码是很大的一个困扰。现推荐一种简单的避开验证码登陆的方式,先代码进入登录页,人工输入验证码登录后浏览器自动保存cookie,再在新的标签中登录。
  具体代码如下:
1 public void yiCheCarSourceManageData(HashMap<String, String> data) throws Exception{
2   //打开第一个页面,请手动输入验证码
3   driver.get(CommonBean.YICHEURL);
4   //输入用户名密码(需自己定位输入,也可去掉该行代码手动输入
5    YiCheLogin.yiCheLoginFun(username, password);
6    //使用快捷键Ctrl+t,打开新标签
7    Actions actionOpenLinkInNewTab = new Actions(TestBase.driver);
8   actionOpenLinkInNewTab.keyDown(Keys.CONTROL).sendKeys("t").keyUp(Keys.CONTROL).perform();
9   //浏览器等待10秒,在这10秒内手动输入验证码并点击登录
10   Thread.sleep(10 * 1000);
11   //切换到新打开的标签
12   String currentWindow = driver.getWindowHandle();
13   Set<String> handles = driver.getWindowHandles();
14   handles.remove(currentWindow);
15   if (handles.size() > 0) {
16     // 定位窗口
17     driver.switchTo().window(handles.iterator().next());
18   }
19   //新标签中,系统自动登录网站
20   driver.get(CommonBean.YICHEURL);
21   Thread.sleep(5 * 1000);
22 }
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号