自动化测试面试官:登录或注册时有验证码怎么处理?OCR图像识别技术大揭秘!
本节大纲
读取cookie实现免登陆
pytesseract+tesseract-ocr实现图像识别
Pillow库对验证码截图
API接口实现图像识别
今天的这个技术点,为什么要给大家分享一下呢?
我相信在面试的时候,可能有小伙伴去面自动化或者测开岗位,就会有很大的几率遇到这样子的问题:你在做自动化的时候,验证码你是怎么处理的呢?
做自动化的时候,大家都知道验证码是比较麻烦的东西,我们去做自动化的时候就会希望开发把验证码屏蔽,或者说先把验证码这个功能取消掉。等我们做完自动化之后,再手工去进行测试,你在前面的一些调试版本的时候是OK的,但是如果是在后面正式/预上线版本,不可能让开发把验证码一直去屏蔽吧?
今天就是给大家来讲一下,遇到验证码这一类问题,我们应该如何去处理?
验证码处理
面试问题:登录或注册时有验证码怎么处理?
1.跟开发沟通,让开发屏蔽验证码,对于验证码进行手工测试--》测试环境
2.跟开发沟通,让开发设置万能验证码,便于自动化测试
3.手机+短信验证码―--》连接数据库,数据库表中﹐会: 1不会: 0断言:根据数据库
4.用自动化脚本实现验证码识别--用技术的方式来解决
cookie--实现免登陆 接口测试: cookie(本地缓存-用户名+密码) -session token auth -->http无响应
图像识别--识别率不能达到100%
可能你进到公司,发现他们用到的可能就是第一种方式,也不会让你去用到第三种第四种,但是面试官考验的就是你有没有这方面的技术积累。
验证码处理
在对截图进行识别:
方式一: pytesseract+tesseract-ocr
方式二:调用第三方接口来识别
OCR环境配置
方式一: pytesseract+tesseract-ocr;
需要的第三方库: pytesseract、tesseract-ocr,在使用pytesseract之前,必须安装
tesseract-ocr,因为pytesserat依赖于tesseract-ocr,否则无法使用
pytesseract安装: pip install pytesseract

想要环境搭建安装指导文件的小伙伴【公号:程序员一凡】
【自动化拦路虎之验证码】OCR图像识别技术大揭秘(实战操作视频版详解教程)

自动化测试面试官:登录或注册时有验证码怎么处理?OCR图像识别技术大揭秘!的更多相关文章
- 引用面试官文章 :如何准备Java初级和高级的技术面试
本人最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只 ...
- 学会了这些redis知识点,面试官会觉得你很nb(转自十年技术大牛)
是数据结构而非类型 很多文章都会说,redis支持5种常用的数据类型,这其实是存在很大的歧义.redis里存的都是二进制数据,其实就是字节数组(byte[]),这些字节数据是没有数据类型的,只有把它们 ...
- 大厂面试官:Java工程师的“十项全能”
想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,在面试之前到底需要准备哪些东西呢?面试时面试官想了解你的什么专业技能,以下都是一个合格Java软件工程师所要具备的. 一.专业技能 熟练的 ...
- 【JAVA秒会技术之秒杀面试官】秒杀Java面试官——集合篇(一)
[JAVA秒会技术之秒杀面试官]秒杀Java面试官——集合篇(一) [JAVA秒会技术之秒杀面试官]JavaEE常见面试题(三) http://blog.csdn.net/qq296398300/ar ...
- Django实战(一)-----用户登录与注册系统5(图片验证码)
为了防止机器人频繁登录网站或者破坏分子恶意登录,很多用户登录和注册系统都提供了图形验证码功能. 验证码(CAPTCHA)是一种区分用户是计算机还是人的公共全自动程序. 可以防止恶意破解密码.刷票.论坛 ...
- 关于ecshop的mobile里user.php登录和注册验证码不显示
在做ecshop模板的时候由于user.php里的登录和注册是在一个页面里切换的,这就致使这里的登录和注册里的验证码不显示 找到mobile/themesmobile/ecshoptemplate_m ...
- Django登录(含随机生成图片验证码)注册实例
登录,生成随机图片验证码 一.登录 - 随机生成图片验证码 1.随机生成验证码 Python随机生成图片验证码,需要使用PIL模块,安装方式如下: pip3 install pillow 1)创建图片 ...
- 【我给面试官画饼】Python自动化测试面试题精讲
那今天给家分享的是一个面试主题. 就比如说我们的自动化测试,自动化如何去应对面试官,和面试官去聊一聊自动化的心得,自动化你现在去面试的时候是一个非常重要的一个关键点,所以如果你在这方面有一定的心得.那 ...
- 【测试工程师面试】在BOSS直聘上和面试官的一问一答
岗位描述: 信用卡核心系统功能测试,负责测试计划制定,测试设计,测试执行,测试进度掌控,自动化工具建设等工作.有责任心,执行力强,工作认真细致,逻辑思维强熟悉linux,oracle或者IBM大型机操 ...
随机推荐
- validator库参数校验
目录 validator库参数校验若干实用技巧 基本示例 翻译校验错误提示信息 自定义错误提示信息的字段名 自定义结构体校验方法 自定义字段校验方法 自定义翻译方法 validator库参数校验若干实 ...
- PTA 将数组中的数逆序存放
7-1 将数组中的数逆序存放 (20 分) 本题要求编写程序,将给定的n个整数存入数组中,将数组中的这n个数逆序存放,再按顺序输出数组中的元素. 输入格式: 输入在第一行中给出一个正整数n(1). ...
- 从本质彻底精通Git——4个模型1个周期1个史观1个工作流
一.什么是Git? Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git是Linus Torvalds为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软 ...
- OLAP引擎:基于Druid组件进行数据统计分析
一.Druid概述 1.Druid简介 Druid是一款基于分布式架构的OLAP引擎,支持数据写入.低延时.高性能的数据分析,具有优秀的数据聚合能力与实时查询能力.在大数据分析.实时计算.监控等领域都 ...
- Swagger3注解使用
这里只简单的说一下swagger的传值,返回值时注解的使用演示.相关注解及说明见其他文章 接收参数方式1 我们常规接收参数,可以使用一个类,类里面把属性作为接收的参数,使用注解对属性进行说明.但是这种 ...
- E. 【例题5】生日相同
解析 字符串操作,本题解采取了多关键词排序 Code #include <bits/stdc++.h> using namespace std; int f, n; struct node ...
- 201871030126-王会娟 实验二 个人项目—《D{0-1} KP》项目报告
项目 内容 课程班级博客链接 https://home.cnblogs.com/u/wanghuijuan815 这个作业要求链接 https://www.cnblogs.com/nwnu-daizh ...
- Hibernate(十四篇)
(一)Hibernate简介 (二)hibernate配置管理 (三)Hibernate对象-关系映射文件 (四)Hibernate API详解 (五)Hibernate一级缓存 (六)Hiberna ...
- python基础(补充):lambda匿名函数,用了的,都说好!
lambda函数又叫做"匿名函数".当你完成一件小工作时,直接使用该函数可以让你的工作得心应手. lambda函数介绍 在Python中,定义函数使用的是def关键字,但是通过la ...
- 【MQ中间件】RabbitMQ -- SpringBoot整合RabbitMQ(3)
1.前言说明 前面一篇博客中提到了使用原生java代码进行测试RabbitMQ实现多种交换机类型的队列场景.但是在项目中我们一般使用SpringBoot项目,而且RabbitMQ天生对于Spring的 ...