本节大纲

读取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图像识别技术大揭秘!的更多相关文章

  1. 引用面试官文章 :如何准备Java初级和高级的技术面试

    本人最近几年一直在做java后端方面的技术面试官,而在最近两周,又密集了面试了一些java初级和高级开发的候选人,在面试过程中,我自认为比较慎重,遇到问题回答不好的候选人,我总会再三从不同方面提问,只 ...

  2. 学会了这些redis知识点,面试官会觉得你很nb(转自十年技术大牛)

    是数据结构而非类型 很多文章都会说,redis支持5种常用的数据类型,这其实是存在很大的歧义.redis里存的都是二进制数据,其实就是字节数组(byte[]),这些字节数据是没有数据类型的,只有把它们 ...

  3. 大厂面试官:Java工程师的“十项全能”

    想要成为合格的Java程序员或工程师到底需要具备哪些专业技能,在面试之前到底需要准备哪些东西呢?面试时面试官想了解你的什么专业技能,以下都是一个合格Java软件工程师所要具备的. 一.专业技能 熟练的 ...

  4. 【JAVA秒会技术之秒杀面试官】秒杀Java面试官——集合篇(一)

    [JAVA秒会技术之秒杀面试官]秒杀Java面试官——集合篇(一) [JAVA秒会技术之秒杀面试官]JavaEE常见面试题(三) http://blog.csdn.net/qq296398300/ar ...

  5. Django实战(一)-----用户登录与注册系统5(图片验证码)

    为了防止机器人频繁登录网站或者破坏分子恶意登录,很多用户登录和注册系统都提供了图形验证码功能. 验证码(CAPTCHA)是一种区分用户是计算机还是人的公共全自动程序. 可以防止恶意破解密码.刷票.论坛 ...

  6. 关于ecshop的mobile里user.php登录和注册验证码不显示

    在做ecshop模板的时候由于user.php里的登录和注册是在一个页面里切换的,这就致使这里的登录和注册里的验证码不显示 找到mobile/themesmobile/ecshoptemplate_m ...

  7. Django登录(含随机生成图片验证码)注册实例

    登录,生成随机图片验证码 一.登录 - 随机生成图片验证码 1.随机生成验证码 Python随机生成图片验证码,需要使用PIL模块,安装方式如下: pip3 install pillow 1)创建图片 ...

  8. 【我给面试官画饼】Python自动化测试面试题精讲

    那今天给家分享的是一个面试主题. 就比如说我们的自动化测试,自动化如何去应对面试官,和面试官去聊一聊自动化的心得,自动化你现在去面试的时候是一个非常重要的一个关键点,所以如果你在这方面有一定的心得.那 ...

  9. 【测试工程师面试】在BOSS直聘上和面试官的一问一答

    岗位描述: 信用卡核心系统功能测试,负责测试计划制定,测试设计,测试执行,测试进度掌控,自动化工具建设等工作.有责任心,执行力强,工作认真细致,逻辑思维强熟悉linux,oracle或者IBM大型机操 ...

随机推荐

  1. 代码审查:从 ArrayList 说线程安全

    本文从代码审查过程中发现的一个 ArrayList 相关的「线程安全」问题出发,来剖析和理解线程安全. 案例分析 前两天在代码 Review 的过程中,看到有小伙伴用了类似以下的写法: List< ...

  2. flutter资料

    Flutter社区和资源传送门 新: 慕课网<Flutter入门与案例实战>   |   中文网<Flutter实战>电子书 字体图标生成 http://fluttericon ...

  3. Oment++ 初学者教程 第4节-将其转变为真实网络

    4.1两个以上的节点 现在,我们将迈出一大步:创建几个tic模块并将它们连接到网络中.现在,我们将使它们的工作变得简单:一个节点生成一条消息,其他节点继续沿随机方向扔消息,直到它到达预定的目标节点为止 ...

  4. [题解] T'ill It's Over

    前言 线段树+网络最大流的建模题. 博客园食用更佳 题目大意 最初时有 \(n\) 个 \(1\) .给定 \(op\) . \(l\) ,其中, \(l\) 为操作次数上限.你有四个操作: 若 \( ...

  5. MyBatis-Plus Generator自定义模板

    相信大家在开发过程中,应该都用过Mybatis-Plus的Generator,但是可能没有自定义过模板并使用. 每个项目都应该有一个从Controller层到Mapper层的通用模板,来去掉哪些简单的 ...

  6. noip初赛复习总纲

    初赛复习总纲 目录 初赛复习总纲 计算机发展史 计算机的分类 计算机的应用 操作系统盘点 计算机的基本结构 中央处理器(**CPU**--**Central Processing Unit**) 存储 ...

  7. elementui 表格 如何使操作中隐藏一个按钮

    <el-table-column label="权限"min-width="100"> <template scope="scope ...

  8. Distributed | Raft

    1. 复制状态机 一致性算法是在复制状态机的背景下产生的.在这种方法下,一组服务器的状态机计算相同状态的相同副本,即使某些服务器宕机,也可以继续运行. 复制状态机通常使用复制日志实现,每个服务器存储一 ...

  9. Centos下搭建LAMP+PHP

    Centos下搭建LAMP+PHP LAMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写: Linux,操作系统 Apache,网页服务器 MariaDB或MySQL,数据库管 ...

  10. FastDFS一步步搭建存储服务器

    一:FastDFS简介 1:FastDFS简介 FastDFS是一个开源的轻量级分布式文件系统,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适 ...