[发明专利]一种用于APP测试中验证码自动输入的方法及系统在审
| 申请号: | 201810987235.2 | 申请日: | 2018-08-28 |
| 公开(公告)号: | CN109189683A | 公开(公告)日: | 2019-01-11 |
| 发明(设计)人: | 贾欣;张大健;孙思桐;王恩奇;王晓影 | 申请(专利权)人: | 中金金融认证中心有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36;G06F21/36;G06K9/46;G06K9/62 |
| 代理公司: | 北京市万慧达律师事务所 11111 | 代理人: | 黄玉东 |
| 地址: | 100054 北京*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 验证码 图像验证 灰度图像 自动化测试程序 关键字符串 二值化 自动化测试过程 图像识别技术 二值化处理 测试 灰化处理 自动识别 图片 | ||
本发明公开一种用于APP测试中验证码自动输入的方法及系统,涉及图像识别技术领域,能够解决现有的APP自动化测试过程中,无法针对图像验证码自动识别输入的问题。该方法包括:获取APP自动化测试程序中待输入的图像验证码;对图像验证码灰化处理,得到灰度图像验证码;基于灰度图像验证码计算最佳阈值,并根据最佳阈值对灰度图像验证码二值化处理,形成二值化图片;识别并提取二值化图片中的关键字符串;将关键字符串输入APP自动化测试程序,完成图像验证码的自动输入。该系统包括上述技术方案所提的方法。
技术领域
本发明涉及图像识别技术领域,尤其涉及一种用于APP测试中验证码自动识别输入的方法及系统。
背景技术
目前很多APP应用在登录的时候除需要输入用户名和密码以外,还需要人工输入验证码,其是一种用于区分用户是计算机还是人的公共全自动程序。验证码可以有效防止黑客利用计算机程序暴力破解密码、刷票、论坛灌水等非法操作,因此验证码是目前很多APP使用地一种保障安全性的方式。由于计算机的识别能力有限,例如只能够识别数字而不能够识别图片,故图像验证码相对于数字验证码具有更高的安全性,能够有效阻止计算机程序的恶意登陆。
同时,随之而来的是,图像验证码将会给APP的自动化测试过程带来诸多不便,由于传统的自动化测试框架,如selenium、Appnium、robotium等不具备图像识别功能,因此采用传统的自动化测试框架将会阻碍APP的正常测试,现有的做法是,在自动化程序测试过程中遇到图像验证码时,需通过测试人员的手别识别输入跳过此阶段,可见,其严重制约了APP自动化测试的效率。
发明内容
本发明的目的在于提供一种用于APP测试中验证码自动输入的方法及系统,能够解决现有的APP自动化测试过程中,无法针对图像验证码自动识别输入的问题。
为了实现上述目的,本发明的一方面提供一种用于APP测试中验证码自动输入的方法,应用于APP自动化测程序中,其特征在于,所述方法包括:
获取APP自动化测试程序中待输入的图像验证码;
对所述图像验证码灰化处理,得到灰度图像验证码;
基于所述灰度图像验证码计算最佳阈值,并根据最佳阈值对所述灰度图像验证码二值化处理,形成二值化图片;
识别并提取所述二值化图片中的关键字符串;
将所述关键字符串输入APP自动化测试程序,完成图像验证码的自动输入。
优选地,获取APP自动化测试中待输入的图像验证码的方法包括:
监测APP自动化测试程序的进程;
在当前进程处于验证码输入步骤时,获取APP当前界面截图;
基于所述界面截图中验证码显示位置信息,提取图像验证码。
优选地,对所述图像验证码灰化处理,得到灰度图像验证码的方法包括:
获取所述图像验证码中各像素对应的坐标值及RGB三原色值;
根据各像素对应的坐标值及RGB三原色值,采用灰度变换公式计算该像素的灰度变换值;
基于各像素的灰度变换值,得到灰度图像验证码。
示例性地,所述灰度变换公式为:
F(i,j)=0.3*R(i,j)+0.59*G(i,j)+0.11*B(i,j),其中,R(i,j)、G(i,j)、B(i,j)对应表示同一坐标像素对应RGB三原色值。
较佳地,基于所述灰度图像验证码计算最佳阈值,并根据最佳阈值对所述灰度图像验证码二值化处理,形成二值化图片的方法包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中金金融认证中心有限公司,未经中金金融认证中心有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810987235.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种脚本录制方法和装置
- 下一篇:基于Python的接口自动化测试方法





