文章目录
总目录
测试概念及模型
目标
-
掌握测试用例包含的基本内容
-
使用等价类方法设计出测试用例
1. 软件测试分类
1.1 按阶段划分
-
单元测试
- 测试:针对单个功能进行测试,如:登录、购物车等
- 开发(更多的理解):针对代码进行测试(一般由开发负责、或自动化测试协助)
-
集成测试
- 组装测试
-
系统测试
- 针对系统进行整体性测试
- 软件功能
- 硬件功能
- 针对系统进行整体性测试
-
验收测试(用户检验产品是否满足自己预期)
-
α测试:bug比较多、内测版本
-
β测试:bug相对比较少、公测版本
-
γ测试:候选发布版本
-
负责人(甲乙方):
- 甲方负责
- 乙方协助(在甲方的授权及信任基础上)
- 第三方评测机构
-
1.2 按是否覆盖源代码划分
-
黑盒测试:输入和输出
-
白盒测试:代码内部实现逻辑
-
灰盒测试
- 测试关注点
- 输入
- 输出
- 代码逻辑
1.3 按是否运行划分
-
静态测试
- 不运行被测试程序
- 测试对象
- 文档
- 代码
-
动态测试
- 运行测试程序
- 测试对象
- 运行中的程序
1.4 按是否自动化划分
- 手工测试(功能测试)
- 自动化测试
- 通过工具或代码代替人进行测试的过程
1.5 更多
- 冒烟测试
- 开发提交测试版本的接收性测试
- 测试点
- 最基本功能,如用户正常登陆
- 最核心的业务流程,如电商购买商品全过程
- 回归测试
- 测试点
- bug回归
- 旧功能回归
- 测试点
- 随机测试
- 探索测试
2. 软件开发流程(软件生命周期)
2.1 瀑布模型(了解)
- 组成
- 需求分析-》概要设计-》详细设计-》编码-》软件测试-》软件维护
- 特点
- 线性模型
- 文档驱动
- 优点
- 只需要关注当前进行的阶段
- 缺点
- 不响应需求变化
- 典型应用场景
- 需求清晰的大型项目,如银行、保险、建筑等
3 软件测试流程
3.1 V模型(了解)
- 组成
- 需求分析-》概要设计-》详细设计-》编码-》单元测试-》集成测试-》系统测试-》验收测试
- 优点
- 只需要关注当前阶段、文档驱动、线性模型
- 缺点
- 不响应需求的变化、不灵活
3.2 W模型(了解)——双V模型
-
绘制
- 开发V:需求分析-》概要设计-》详细设计-》编码 -》集成-》实施-》交付
- 测试V:验收测试设计-》系统测试设计-》集成测试设计-》单元测试设计-》单元测试-》集成测试-》系统测试-》验收测试
-
优点
-
测试贯穿软件开发的全生命周期
-
早参与、早发现、早解决
-
-
缺点
- 技术和管理要求比较高
4. 软件质量模型(了解)
-
功能性:检查业务功能是否满足需求
-
可靠性:容错能力(恢复正常的时间、能力)
-
易用性:看的懂、会使用等
-
效率性:性能(响应时间、消耗的资源(CPU、内存)等)
-
维护性:为后续功能的开发与维护提供便利
-
移植性:软件需要在不同的软件环境和硬件环境下都能正常的工作
5 软件测试用例(重点)⭐⭐
5.1 软件测试用例概念
-
概念:一个为了特定的目的(检验开发的代码实现是否满足用户的需求)而设计的文档(包含测试输入、执行条件、预期结果),文档的形式可以是xmind、excel等。
-
案例
标题 | 测试输入 | 执行条件 | 预期结果 |
---|---|---|---|
验证电脑开机功能 | 有电 | 按下开机键 | 屏幕点亮 |
5.2 测试用例组成要素与用例模板⭐⭐
- ID
- 唯一性
- 项目-模块-001
- 模块
- 优先级
- 作用:体现用例执行的先后顺序
- 分类:
- 高
- 中
- 低
- 用例标题
- 唯一性
- 见名知意
- 预置条件
- 测试步骤
- 尽可能详细
- 测试数据
- 预期结果
例子
5.3 软件测试用例的作用(了解)
-
便于理清测试思路,确保需覆盖测试的功能点无遗漏
-
便于测试工作量的评估
-
便于提前准备测试数据
-
便于把控测试工作进度
-
便于回归测试
-
便于测试工作的组织,提高测试效率,降低测试交接成本
6 等价类(重点)
6.1 等价类划分法
-
概念:通过科学的方法找到具有共同特性的测试输入的子集,能够从穷举测试中解放(大大减少了测试用例的数量,从而提升测试效率。)
-
分类
-
有效等价类:满足需求
-
无效等价类:不满足需求
-
-
设计测试用例的步骤⭐⭐
-
需求分析
-
划分等价类
- 有效
- 无效
- 规则(需求本身)
- 长度
- 类型
- 是否为空(必填项)
- 是否重复
-
设计用例
-
-
典型应用场景
- 输入框
案例1:QQ账号
QQ账号:6——10位自然数
案例3:sina邮箱
新浪邮箱登录,要求输入(邮箱名)@sina.cn和(密码)
邮箱名为:4-16位字符,支持英文、数字、下划线(不能全是数字或者下划线)
密码:6-18位字符
作业
1、梳理今日知识点,结合课上知识讲解补充完善今日总结内容,以xmind形式输出
2、等价类划分法设计测试用例的步骤?
1. 明确需求 (找到所有的输入项)
2. 针对每个输入项分别确定有效和无效等价类
3. 编写测试用例:
一条用例尽可能多的覆盖有效等价类;
无效等价类中每个取值都要使用一条用例来覆盖;
3、写出下面问题的有效等价类、无效等价类。
(1)程序要求输入一个数X,并且X的取值范围为集合{1,3,7,15}。
有效等价类:1,3,7,15
无效等价类:2,4
(2)用户名(昵称)长度为 3-19,以字母开头,字母或数字结尾
有效等价类:
- 用户名长度为3-19,以字母开头数字结尾
- 用户名长度为3-19,以字母开头字母结尾
无效等价类:
- 用户名长度小于3,
- 用户名长度大于19,
- 以数字开头
- 以字母开头,以空格结尾
- 特殊字符、汉字、为空
4、案例2:城市电话号码
城市电话号码:某城市的电话号码是由3部分组成,分别是:
地区码:空白或是3位数字
前缀:非‘0’且非‘1’开头的三位数字
后缀:4位数字
5、TPShop商城注册功能测试用例设计
tpshop注册功能需求说明:
手机号:第一位为1,第二位非2,的11位自然数
注意:对于邮箱注册,仅验证邮箱格式是否正确
xxxx-长度为4-16,类型为数字,字母,下划线组合(可以是纯字母或者数字,不能以下划线开头)
验证码:字母或者数字,与图片一致,点击刷新按钮可以更新验证码
设置密码:要求同输入框提示,6-16位大小写英文字母,数字或符号的组合 (可以是纯字母,数字,符号)
确认密码:同设置密码
推荐人手机:(非必填,之前注册成功的用户)
我已阅读并同意:勾选之后才可以点击同意协议并注册
总结
-
掌握测试用例包含的基本内容
- 能够说出测试用例的定义
- 能够写出测试用例的8要素
- 能够按照测试用例8要素模板完成1条测试用例描述
-
使用等价类方法设计出测试用例
- 能够根据需求划分有效等价类和无效等价类
- 能够使用等价类方法设计(新浪邮箱登录案例)测试用例
- 能够说出等价类方法的适用场景