(二十七)OCR技术

一、预先工作
1、一般网站登录有个第一次成功登录提示是否记录密码和用户名等信息已经写在文本框中,测试回放代码时会出现问题,所以要先将这些清理掉。
做法:工具–>Internet选项–>内容–>自动完成–>将所有复选框都不选,若之前登录过测试系统还要将“清理表单”和“清除密码”点击
2、网站登录,要通过浏览器打开,一般打开浏览器时,默认的是IE主页面,若再点击收藏等操作比较麻烦,所以我们做法是将网站的后台登录主页面作为IE浏览器打开的主页面
做法:工具–>常规中的地址改掉:http://localhost/ecshop/admin/privilege.php?act=login

二、检查用户输入的验证码是否正确
能想到的是用输出值技术,首先明确这是张图片
①用标准输出值:没有text值,所以不能用
②文本输出值、文本区域输出值不能用
报错原因:web不支持添加文本检查点、文本区域输出值
三、OCR技术
OCR技术:获取图片上的文本信息
web不支持添加文本检查点、文本区域输出值解决办法:勾选掉web插件(window—位置)
在打开QTP时,将Add-in Manager中的“Web”不勾选
此时该对象就是普通的WinObject对象,可以用文本区域检查点

但是还存在一个问题,就是它是有背景颜色的,所以可能影响识别
有些识别就是很清晰的,有些暗的图片就不清晰,所以思路是背景使用最清晰的,内容是随意换的。要注意,测试的是内容而不是背景。
此时找到存放这些背景的位置C:\phpStudy\WWW\ecshop\data\captcha,背景是程序随机选择的,所以不能将不清晰的图片删除,做法是用同一张清晰的图片,进行不同的命名
并将字符的颜色设置为黑色
做法:C:\phpStudy\WWW\ecshop\includes中的cls_captcha.php中的themes_jpg、theme_gif中的255改为0。(255为白色,0为黑色)

上面的做法完成后,就能以winapp方式获取到白底黑字的验证码了,但是测试还要在web环境中测试,所以应该怎么办呢?
做法是:在输入验证码前获取到另一个Test中的Action,将获取到的验证码作为参数给输入框中即可。

猜你喜欢

转载自blog.csdn.net/jiangshangchunjiezi/article/details/80733749