2020-09-15

测试的分类



前言

也许有很多人还不知道软件测试是什么,或者是部分人想学习,了解了一点这方面得知识,但是自己了解得也不是全面,网上说得也不是很清楚,那么我们便来捋清楚测试的分类。

一、软件测试是什么?

软件测试(英文名:Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。其经典定义为:在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较过程。简单来说就是预期结果和实际结果的对比。

比如:测试微信朋友圈点赞功能是否正常,测试预期结果和实际结果是否一致,不一致,提bug;一致,测试通过。

二、测试的分类

1.测试方法

(1)黑盒测试:
黑盒测试也称功能测试,它是通过测试来检测每个功能是否都能正常使用。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。黑盒测试着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能进行测试。
黑盒测试是以用户的角度,从输入数据与输出数据的对应关系出发进行测试的。很明显,如果外部特性本身设计有问题或规格说明的规定有误,用黑盒测试方法是发现不了的。

(2)白盒测试:
就是去检查开发写的代码对不对。一般由开发人员来做。

(3)灰盒测试:
灰盒测试,是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。灰盒测试不像白盒那样详细、完整,但又比黑盒测试更关注程序的内部逻辑,常常是通过一些表征性的现象、事件、标志来判断内部的运行状态。

2.软件测试的方向

(1)功能测试:
(2)性能测试:测试在不同的情况下,软件的响应时间

压力测试:软件最多能支持多少个人去使用
负载测试:发现软件在人最多的情况下,能坚持多久可以正常工作
并发测试:⼀窝蜂⼀起上的时候软件会出错吗(比如:秒杀活动)

(3)安全测试:防止黑客攻击我们的系统,防止不让别人攻击成功
分为流量攻击、渗透、跨域攻击、SQL注入等

(4)兼容性测试:分为webapp两类。
①web:在不同的浏览器上表现是否正常,按照市场份额,从高到低的进行测试
常用的浏览器:谷歌浏览器、火狐、edge、ie、qq、360、saferi、opra、夸克

②:APP:又分为 andriod 和 iOS 两类
在不同的安卓设备上测试使用,按照当前市场所占份额(百度流量研究院)进行选择性的测试,andriod需要考虑 选取不同的安卓品牌、型号、系统版本、屏幕分辨率、屏幕形状综合考虑进行选择测试。

公司提供了部分型号的手机给我们测试用,当覆盖度不够时,我们都是在公司找同事众筹,凑⼀凑。

或者可以使用云测试平台进行测试

ios:在不同的苹果手机上测试使用(资金多可以全买一遍)

(5)UI测试:
就是检查界面的显示对不对,要风格统⼀、布局合理、配色合理等。

(6)易用性测试:
检查好不好用,操作步骤越少越好,学习成本越低越好

(7)稳定性测试:长时间运行使用看会不会出问题

(8)APP专项测试:

①弱网测试:模拟软件在不同的网络(2/3/4/5/wifi/热点/飞行模式)下的表现,不同的网络本质区别就是网速不同,所以可以通过软件来模拟

②权限测试: 把软件需要的权限关闭后看软件是否还能正常使用,还是提醒开启某某权限。

③安装/卸载/更新测试

④场景交互测试: 测试软件在电话、短信、微信来了、前后台切换、分屏这些场景下软件是否正常运行。

⑤资源争用: 测试两款功能相近的软件同时争用一个设备时的表现。

⑥消息推送测试:消息推送标准的都是消息服务器在推送和软件无关,消息推送的顺序

⑦资源监控:cpu、内存、硬盘、流量、电量等(求平均值)

兼容性测试、易用性测试、稳定性测试、UI测试,都属于APP测试的内容

3.软件测试的阶段

(1)单元测试:
是白盒测试,检查开发写的代码、方法、函数等。一般都是由开发自己做。

(2)集成测试:
将各个单元用接口连接起来,测试不同的模块和模块直接是否正确的连接,测试接口对不对

(3)系统测试:
测试的就是软件的整个整体
功能测试、安全测试、性能测试等全都要测试。

(4)验收测试:
由甲方或者公司领导来做验收测试。α测试是内测,β测试是公测。

4.软件测试的对象

就是我们对什么对象测试,就可以叫做什么测试。
比如:app测试、web测试、物联网测试、嵌入式测试、车联网测试、大数据测试、ai测试、银行测试、金融测试等等。

5.软件测试的状态

可以分为动态测试和静态测试

6.软件测试的其他测试方法

①冒烟测试: 测试前的测试,检查软件是否具备可测试性。
②回归测试:检查上一轮测试发现的BUG是否被修改。
③埋点测试:打日志来实现
④MOCK/打桩测试:脚本用之前自己先试试脚本能不能用,⼀般做自动化测试才会用到


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值