软件测试基础
前言
- 软件测试的基础知识总览
一、什么是软件测试
- 软件测试就是软件的质量检测,通过一定时间,操作和检测确保软件的功能是否正常
二、软件测试的目的
- 发现程序员在开发过程中代码存在的问题,以及逻辑上的错误
- 审核提交的产品是否符合客户需求
- 提高客户的满意度
- 提交更高质量的产品
三、软件测试的基本流程
- V模型,RAD快速开发,也成为了软件开发的V模型。就是开发和测试同时进行,用来缩短开发周期,提高测试相率。
四、测试分类
- 白盒测完(逻辑驱动测试):称为结构测试、透明盒测试,是基于代码的测试,要求测试人员能够自己写带吗来测试程序内部逻辑结构,和所有逻辑路径,输出测试数据
- 黑盒测试(数据驱动测试): 称为功能测试,界面测试(UI测试,测试界面布局是否合理),压力测试,负载测试
- 兼容性测试: 测试系统软件硬件的兼容性能力(app、浏览器兼容性、客户端兼容性)
- 性能测试: 压力测试(最大访问量)、负载测试(最大访问量的最长时间)
- 安全测试: 测试系统防止非法入侵的能力(网络安全方面)
- 恢复测试
- 回归测试: 按错误修改后或软件功能,环境发生变化后进行的重新测试(就是开发对测试所提出的bug进行修复后,再把软件发给测试重新测)
- 探索性测试
- 验收测试
五、测试用例
1、什么是测试用例
- 在测试之前,根据测试点来设计的的测试依据。
(就是指导你执行测试,帮助你证明软件功能或发现软件缺陷的一种说明。也就是每一个测试点的数据设计和步骤设计。)
2、测试用例的重要性
- 便于测试计划的实施
我们可以根据测试用例,一步一步滴测试,并清楚地知道测试的进度。 - 规划测试数据的准备
根据测试用例,提前设计好测试需要的数据,如:手机号码(数据类型,数据长度),微信红包金额(0.01-200) - 编写测试脚本的根本
- 评估测试结果的基准
根据测试用例的通过率以及错误率,来判定该软件测试项目的测试结果,能不能发布 - 分析缺陷、
3、测试用例的设计方法
- 等价类划分:这个范围内的数据对某个功能或者是某个定义规则而言,取任何一个数据都是等同效果的。
- 边界值 :就是定义分类的左右两边附近的值
- 错误推测法:推测其异常情况,平常大部分异常情况,都是来自于错误推测法。
- 场景法:模拟整个业务流程的场景,然后验证系统功能是否正确。
- 正常流:基本流就是没有出现异常 (一次性正常登录)
- 分支流:判断异常,然后进行处理
4、测试点分析
- 对某个功能模块的单个功能进行验证。(功能测试)
- 模块与模块间的业务联系,验证相关联系==(功能交互测试)==
- 考虑隐形的需求验证,在需求文档中一般没有体现==(界面,安全,兼容性,易用性,性能)==
示例:整理绑定银行卡的测试点