【软件测试】测试点总结,收取短信验证码的测试(详全),你的即用宝典......

news2025/1/16 1:11:46

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

现在的APP,很多都需要登录注册,而注册一般要验证手机号码,就会发短信验证码,类似一个下面功能,我们会怎么考虑进行测试?
请添加图片描述

首先确定页面有哪些元素,并且明确功能、测试点等,点击手机号获取验证码是用来做什么的。首先明确和细化需求,(明确功能)验证码是手机下发的验证码,还是图片验证码等。

在明确功能后先冒烟测试或通过性测试,测试功能正常使用后,再进行非通过性(异常)测试。

1、先进行通过性测试

输入正确的手机号码,点击获取验证码,查看手机是否收到短信。

收到短信后输入验证码:若为登录功能,还应检查是否进行页面跳转,是否正确进行登录,是否可操作登录后应操作的项;若功能为注册,则应查看是否注册成功,去数据库检查数据的正确性。
通常手机号验证的规则为: /^1d{10}$/,以1开始后面的10位正则,覆盖移动、联通、电信。当然,做的更好的校验还有号段检查,比如120xxx手机号就是非法的。

2、为空测试
①不输入手机号,不输入验证码 直接点击登录或注册等功能点 ,提示不能为空;
②不输入手机号,只输入验证码 直接点击登录或注册等功能点 ,提示不能为空;
③输入手机号码,不输入验证码 直接点击登录或注册等功能点 ,提示不能为空;

3、输错手机号码错误测试
①输入汉字、小数,字符串,空格及组合在手机号码文本框中,提示手机号码不正确;
②输入10位,12位数字进行登录,提示手机号码不正确,提示手机号码不正确;
③输入11位非手机号码(号段校验)进行获取验证码,提示手机号码不正确;

4、验证码
①输入错误的验证码(多输、少输,不输以及非收到的正确验证码),提示请输入正确的验证码;
②明确验证码的失效时长后,在时长之后输入输入码,提示该验证码已失效,请重新获取验证码;
③倒计时60s内,不能再次点击获取验证码;
④倒计时开始时,进行下一步操作时,返回后,倒计时应该还是接着倒计时。如操作时50s,经过4s后返回,应该是46s。

5、常见漏洞
①无效验证:有验证码模块,但验证模块与业务功能没有关联性,此为无效验证,一般在新上线的系统中比较常见。

情况一,获取短信验证码后,随意输入验证码,直接输入两次密码,可成功更改用户密码,没有对短信验证码进行验证,可能导致CSRF等问题。
情况二,任意用户注册
第一步,利用自己的手机号接收验证码进行验证,下一步跳转到一个设定密码的页面。
第二步,抓包,篡改手机号,使用任意手机号进行注册。
问题剖析:业务一致性存在安全隐患,身份验证与密码修改过程分开,验证无效。

②客户端验证绕过:客户端验证是不安全的,可能导致任意账号注册、登录及重置任意用户密码等一系列问题。

情况一,直接返回明文验证码
点击获取收集验证码,监听到两条json数据,可以发现验证码就藏在ticket里面,输入即可登陆成功。

情况二,返回密文验证码
验证加密后返回客户端,用户解密即可获取验证码。

情况三,拦截替换返回包
第一步,使用正常账号修改密码,获取验证码通过时服务器返回数据,保存该信息;
第二步,使用fiddler下断,之后点击确定,服务器会返回验证码错误之类的信息,使用{“MessageHeader”:{“MessageID”:“RSP036”,“ErrorCode”:“S000”,“Description”:“成功!”}}此信息进行替换后再执行,密码修改成功。
问题剖析:常见于APP等客户端软件,通过拦截替换返回信息,绕过客户端本地验证。

③短信轰炸

短信轰炸是手机验证码漏洞中最常见的一种漏洞类型。
在测试的过程中,对短信验证码接口进行重放,导致大量发送恶意短信。

情况一,无限制,任意下发

情况二,有一定时间间隔,无限下发
每隔60秒可下发一条短信,无限下发,短信轰炸。在测试过程中,可通过编写Python脚本来计算短信下发时间间隔,实现短信轰炸。

④验证码爆破情况:短信验证码一般由4位或6位数字组成,若服务端未对验证时间、次数进行限制,则存在被爆破的可能。
输入手机号获取验证码,输入任意短信验证码,发起请求,抓包,将短信验证码字段设置成payloads取值范围为000000-999999进行暴力破解,根据返回响应包长度判断是否爆破成功。一般使用的工具burpsuite。

⑤验证码与手机未绑定。

6、如何防止手机验证码被爆破,架构的方面提出要求:如3小时被人刷了千条

①前端app,从界面方面限制请求的次数(60s获取一次),也就是按钮的事件;禁用代理调用接口,增加图形验证码或者附加码正确了再发送措施。

②后台接口:参数做限制,设备id、mac、ip做限制。例如60s内 相同的设备id、mac、ip过滤请求;参数加密;添加https认证,客户端和后台成证书,防止抓包获取接口情况;后台做认证操作:限制在app上获取,协定和app之间认证算法。app传递公钥,后端进行认证筛选等过滤。

下面是我整理的2022年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

不要四处乱撞,每天做好一件事,在遇到挫折的时候,坦然微笑地面对生活,这样就可以享受到成功的境界。

成功源于发现细节,没有细节就没有机遇,留心细节意味着创造机遇。一件司空见惯的小事或许就可能是打开机遇宝库的钥匙!

面对困难,微笑含着勇敢;面对挫折,微笑带着自信;面对误解,微笑露出宽容;面对冷漠,微笑洋溢热情;面对爱情,微笑代表真心。愿你微笑面对人生。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/117486.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

技术评审管理方案

技术评审(Technical Review, TR)的目的是尽早地发现工作成果中的缺陷,并帮助开发人员及时消除缺陷,从而有效地提高产品的质量。 技术评审过程域是SPP模型的重要组成部分。本规范阐述了技术评审过程域的三个主要规程: …

基于Java(SSM+SpringBoot+Thymeleaf)+MySQL 开发的论坛社区网站【100010072】

基于 SSM Spring Boot Thymeleaf 开发的论坛社区网站 项目概述 本项目是依据 2019 年牛客项目,基于 SSM Spring Boot Thymeleaf 开发的论坛社区网站,网站实现了如下功能: 使用 Spring Email Interceptor Spring Security 等实现网站…

unity组件介绍

所有物体都是一个空物体,加上一些组件才形成了所需要的GameObject。 这是一个空物体,在Scene场景中没有任何外在表现,因为它只有Transform这个组件,表示它仅仅只有位置,旋转和缩放。 Mesh组件 Mesh Filter mesh filt…

【聆思CSK6 视觉AI开发套件试用】(有彩蛋)AI头肩手势检测

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动,更多开发板试用活动请关注极术社区网站。作者:Tony_c217AK 牛逼的AI套件 如何3分钟体验AI功能(windows系统 ) 插入上图左边的USB(上图中靠近左边的USB接口),给设备上…

锁,CAS,Synchronized 原理

作者:~小明学编程 文章专栏:JavaEE 格言:热爱编程的,终将被编程所厚爱。 目录 常见的锁 悲观锁与乐观锁 悲观锁 乐观锁 读写锁 重量级锁 vs 轻量级锁 挂起等待锁和自旋锁 公平锁和非公平锁 可重入锁与不可重入锁 CAS …

JavaDS4-链表

目录 1.定义 2.结构 2.1.类似火车 2.2.分类 2.2.1.按方向分 2.2.2.按是否带头节点分 2.2.3.按是否循环分 3.重点掌握 3.1.无头单向非循环链表 3.1.1.在链表的头部添加节点 3.1.2.在链表的任意位置index处添加节点 3.1.3.在链表的尾部添加节点 3.1.4.查询链表的任意…

如何使用单总线?

如何使用单总线?一、什么叫单总线?二、单总线协议?三、怎么使用单总线来做开发?IBUTTON 钥匙读取复制设备项目一、什么叫单总线? 1.如下图,使用单总线的传感器DS18B20 2.使用单总线的储物柜钥匙 3.定义&…

元素偏移量 offset、元素可视区 client和元素滚动 scroll

1、元素偏移量 offset 系列 1.1、offset 概述 offset 翻译过来就是偏移量, 我们使用 offset系列相关属性可以动态的得到该元素的位置(偏移)、大小等。 获得元素距离带有定位父元素的位置获得元素自身的大小(宽度高度&#xff09…

【java】static关键字

static可以修饰的内容如下: ● 变量 ● 方法 ● 代码块 ● 内部类 那就有一个问题,为什么static不能修饰外部类? 我们首先看一下static的作用是什么? 先看看其他人怎么解释的: A static method can be accessed with…

RK3588平台开发系列讲解(进程篇)进程的简介

平台内核版本安卓版本RK3588Linux 5.10Android 12文章目录 一、进程的四要素二、进程的三种状态三、task_struct数据结构四、进程优先级五、进程系统调用沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍进程的相关知识。 一、进程的四要素 1、有一段程序供其…

Axure 原型适应到不同平台的方法

“老师,公司要求我做一个不同机型的原型,不想重新做,可以适配吗?” “老师,手机有那么多类型,我难道要做那么多的原型吗?” “老师,axure中怎么进行原型的适配呢?应该怎…

云服务器搭建网站(初学)

第一步:来到/var/www/目录下 第二步:在www目录下创建web1文件夹 第三步:来到root目录 第四步:在root目录上传所需要的压缩包 第五步:解压刚刚上传的压缩包到指定的目录(我们刚刚所创建的web1目录&#xff…

HTML5 文件操作

文章目录HTML5 文件操作file元素选择单个文件选择多个文件美化file元素File对象获取文件信息转化单位FileReader对象读取txt文本在线预览图片拖拽文件并读取拖拽图片并预览Blob对象创建并下载txt文件将Canvas下载为一张图片HTML5 文件操作 file元素 语法 <input type&quo…

SpringIOC流程以及Mybatis架构

1、Spring IOC 流程图 ![在这里插入图片描述](https://img-blog.csdnimg.cn/626a8582f4b14ac3983567a85bce1d4d.png IOC 依赖注入整体流程 1、环境初始化 2、Bean工厂初始化 3、读取项目配置 4、定义解析Bean-->BeanDefintion 5、将BeanDefinition存储工厂类的Map 6、通过…

Golang 将视频按照时间维度剪切 | Golang工具

目录 前言 环境依赖 代码 总结 前言 本文提供将视频按照时间维度进行剪切的工具方法&#xff0c;一如既往的实用主义。 主要也是学习一下golang使用ffmpeg工具的方式。 环境依赖 ffmpeg环境安装&#xff0c;可以参考我的另一篇文章&#xff1a;windows ffmpeg安装部署_阿…

2022 IoTDB Summit:IoTDB PMC 乔嘉林《端边云协同:Apache IoTDB 全新单机分布式架构》...

12 月 3 日、4日&#xff0c;2022 Apache IoTDB 物联网生态大会在线上圆满落幕。大会上发布 Apache IoTDB 的分布式 1.0 版本&#xff0c;并分享 Apache IoTDB 实现的数据管理技术与物联网场景实践案例&#xff0c;深入探讨了 Apache IoTDB 与物联网企业如何共建活跃生态&#…

具有循环条件gan的实值(医疗)时间序列生成-2017

REAL-VALUED (MEDICAL) TIME SERIES GENERATION WITH RECURRENT CONDITIONAL GANS ABSTRACT 生成对抗网络(GANs)作为一种训练模型以产生逼真数据的框架已经取得了显著的成功。在这项工作中&#xff0c;我们提出了循环GAN (RGAN)和循环条件GAN (RCGAN)来生成真实的实值多维时间…

canal实战问题汇总分析

canal在实战过程经常会遇到这样或者那样的问题&#xff0c;今天我们专门用一篇文章来列举分析一下&#xff0c;比如、JDK版meta.dat 中保存的位点信息和数据库的位点信息不一致本不匹配、bin-log信息消费失败等问题&#xff0c;下面我们开始一一分析&#xff1a; 1、数据库数据…

数据可视化软件有哪些?

随着大数据概念的普及与业务数据的爆炸式增长&#xff0c;越来越多的企业已经不满足于Excel的常规操作。 因为相较于以往PPT/Word/Excel数据汇报的形式而言&#xff0c;数据可视化平台包含了丰富的图表、组件信息&#xff0c;仅用一张屏幕就能够囊括诸多讯息&#xff0c;画面色…

2022全年度休闲食品(零食)十大热门品牌销量榜单

随着经济的发展及人们消费水平的提高&#xff0c;休闲食品作为居家出游的快消品&#xff0c;逐渐成为了人们生活中必不可少的一部分&#xff0c;同时&#xff0c;消费者对于休闲食品的数量和品质的需求也正不断增长。并且&#xff0c;在休闲食品的消费群体中&#xff0c;年轻群…