1、动态测试:比如微信支付功能 聊天功能 有数据交互
2、静态测试:需求评审 ui图 这个过程就是静态测试
3、正式评审:交叉评审 组内评审 会议评审
4、度量:木匠用的尺子等 软件:bug密度可以衡量一个软件的好坏
5、记录员:参加需求评审的人都是
6、评审员:需求主讲==》产品经理 测试用例==》测试人员
7、技术评审:
1)对当前迭代的功能代码进行评审
2)对当前迭代的功能新增的接口进行评审
8、走查:需求评审和用例评审
9、复杂性:组合场景都,越复杂
10、圈复杂度:
代码写越复杂,圈复杂度越高
代码写越简单。圈复杂度越低
11、控制流:登录功能的逻辑==》画出一个控制流程图
12、数据流:数据从哪里来往哪里去,比如我们的微信,注册的信息==》微信后台数据库
13、控制流图:开发实现功能的时候自己画一个流程图帮助理解
14、圈复杂度:独立路径的数量
v= e-n +2==》10-7+2=5
计算圈复杂度的公式 V = p+1 ==》1,2,3,4是判定节点==》5
独立路径的数量
1-4-6
1-2-5-6
1-4-5-6
1-2-3-7-6
1-2-3-2-5-6
例子
独立路径的数量&& 与 ==》且 两个为真且为真
||代表或 ==》只要有一个为真则为真
a-d-g ==》x =100 y=500 z =5000
a-b-c ==》x=101 y=501
a-d-e-f==》x =100 y=500 z =5001
15、功能设计用例的方法(黑盒设计用例的方法)
等价类【重点】
边界值【重点】
判定表
因果图
状态迁移图
场景法
正交表
1)等价类
等价类:指某个输入域的集合,在集合中 各个输入的条件都是等效的。
例子1 需求:搜索框对公司绩效考核进行打分1-100分正整数
输入域:1-100
集合:1-100之间的任意正整数,比如 2,6,88,99
等效:等价类当中的这些集合都是等价的
通常等价类划分为2种情况:
有效等价类:对程序规格说明有意义的、 合理 的输入数据
1,6,7,88,99,100 ==》有效等价类
无效等价类:对程序规格说明无意义的、 不合 理的输入数据
0,-1,101,多测师,duoceshi,% @ 空 ==》无效等价类
例子2:微信聊天输入框:现有功能
有效等价类:文字 数字 特殊符 英文 中文表情 视频 图片文件 连接 语音 红包
无效等价类:长度超出 图片大小 文件大小 语音超时 空 红包额度 最低额度
例子3:
年龄:必须是数字且是正整数小于200
有效等价类:1,2,3,4 ==》小于200正整数
无效等价类:0 -1 浮点型 中文 英文 特殊符 空
规定了输入规则时,可以划分出一个有效的等价类(符合 规则)
和若干个无效等价类(从不同角度违反规则)==》怎么去理解?
需求:QQ 密码是由6-10位数字或英文或下划线 组成
有效等价类:123456 abcdef ______
无效等价类:
12345 ==》长度违反
多测师多测师 ==》类型违反
!@#¥%& ==》类型违反
16、需求:QQ 密码是由6-10位数字或英文或下划线 组成
等价类划分的设计用例思路:
1. 找输入条件
2. 为每个输入条件找有效、无效等价类
3. 为每个等价类编号
4. 用最少的用例覆盖最多的有效等价类 ==》注意数据的合理性
5. 每一个无效等价类都是一个用例 ==》不能跨两个无效等价类
6. 并非所有有效等价类都有无效 ==>性别 男女
7. 等价类的覆盖可以重复覆盖
==>abc12 ==>跨了那几个编号 1,3
设计测试用例包括哪些内容?(用例的要素)
用例编号:每一条用例的id 序号
用例标题:用简洁的语言描述着用用例需要验证什么
用例步骤:详细记录操作过程(需要备注验证数据)
预期结果:通过操作过程会达到什么预期(需要符合需求)
前置条件:作下一步之前首先做好了什么
优先级: 高中低
场景法:正常 异常
编写用例需要注意哪些事项
1)用例一般以验证开头
2)用例标题和步骤内容相呼应
3)用例标题和预期结果相呼应
4)等价类设计用力方法描述一般用大于 小于 等于 在什么之间
5)标题不要出现判断语句
注意数据的合理性
有效等价类:
123456
1234567890
abcdef
abcdefghij
______
__________
abc123
abc___
123___
ab12__
abc1234567
abc__________
1234567___
acb123456_
无效等价类:
12345
12345678901
abcde
abcdefghijk
_____
___________
abc12
abc__
123__
ab12_
abc12345678
abc___________
1234567____
acb123456__
特殊字符 ==》@#¥%&*
中文 ==》多测师多测师
空
17、档案管理系统
怎么来规范数据合理性
有效等价类
199001 ==》验证年份在1990-2049(月份)
204901 ==》验证年份在1990-2049
199012 ==》月份
204912 ==》月份
200002 ==》中间时间
无效等价类:
非数字 ==》中文 英文 特殊字符
19900 ==》长度小于6位
1990011 ==》长度大于6位
1990多测 ==》含有中文
19900ab ==》含有英文
1990@# ==》含有特殊符
198901 ==》年份小于1990
205012 ==》年份大于2049
199000 ==》月份小于01
199013 ==>月份大于12
为空
18、常见的能够划分等价类的地方
1. 数值范围 ==》0-100
2. 重复次数 ==》银行取钱密码输入错误次数超出3次锁定
3. 字符串长度 ==》输入框规定输入规则师6-10英文字符
4. 字符串组中字符的个数 ==》[123,456,789]
5. 文件命名 ==》.png .gif .jpg
6. 文件大小 ==>规定了上传文件5-10mb
7. 屏幕的颜色种类 ==》红色 绿色
8. 超时时间 ==》查询页面返回不能超过5s
19、边界值【重要】
上点:边界上的点
离点:离上点最近的点 (即上点左右两边最邻近的点)
内点:在域范围内的点
例子1 需求:搜索框对公司绩效考核进行打分1-100分正整数[1,100]闭区间
上点 ==》1,100
离点 ==》0,101
内点 ==>88
闭区间[1,100]==>正常测试点:1,100,88 异常测试点:0,101
上点 ==》1,100
离点 ==》0,101
内点 ==>88
半闭半开[1,100)==》正常测试点:1,99,88 异常测试点:0,100
上点 ==》1,100
离点 ==》0,99
内点 ==>88
半开半闭(1,100] ==》正常测试点:2,100,88 异常测试点:1,101
上点 ==》1,100
离点 ==》2,101
内点 ==>88
开区间(1,100) ==>正常测试点:2,99,88 异常测试点:1,100
上点 ==》1,100
离点 ==》2,99
内点 ==>88
总结一个输入域的边界值设计用来方法测试点取几个点5个点 :两个上点 两个离点 一个内点
例子1:qq注册密码是8-16为数字字符[8,16]
上点 ==》8,16
离点 ==》7,17
内点 ==>10
例子2:由11位纯数字字符组成的手机号 ==》10位 11位 12位
边界值的描述:
验证输入框输入11位数字字符组成的手机号
验证输入框输入10位数字字符组成的手机号
验证输入框输入12位数字字符组成的手机号
等价类的描述:
验证输入框输入等于11位数字字符组成的手机号
验证输入框输入小于11位数字字符组成的手机号
验证输入框输入大于11位数字字符组成的手机号
20、场景法
场景法:用于流程方面
基本流程:正常流程
备选流程:异常流程
登录功能的逻辑
正常流程:输入正确的账号 密码登录成功
异常流程
1)正确的账号,错误的密码登录失败
2)错误的账号 正确的密码登录失败
3)错误的账号和密码登录失败
4)账号为空,密码正确登录失败
5)账号正确,密码为空登录失败
5)账号密码都为空登录失败
6)重复登录同一账号失败
7)账号被锁定了登录失败
8)手机端和电脑端是否可以同时登录
取款机
主流程:插入正确的银行卡=》输入正确的密码=》选择服务=》输入金额=》取款成功
异常流程
1)插入银行卡方向不正确
2)插入的卡消磁了
3)插入的卡挂失了
4)插入的卡缺失
5)输入错误的密码
6)插入卡后取消
7)输入的金额大于银行卡的余额
8)输入的金额大于取款机的余额
9)输入的金额大于当日银行卡的限额
10)输入的金额小于100元
11)输入的金额是小数点
21、状态迁移图(订单的状态)
已下单=》已取消订单=》待付款=》已付款==》取消付款==》待配货=》已配货=》已发货=》待收货
=》取消收货=》已签收
作业:
众安保险需求文档编写30条用例
微信发朋友圈编写20条测试点
支付宝支付功能编写20条测试点
微信发朋友圈测试点:测试点一般包括是否
1)是否能拍摄照片
2)拍摄的照片是否可以取消
3)是否可以拍摄视频
4)点击拍摄,是否可以返回
总结边界值:
边界值分析原则
1. 如果输入(输出)条件规定了取值范围,则应该以该范
围的边界内及边界附近的值作为测试用例 ==》1-100
2. 如果输入(输出)条件规定了值的个数,则用最大个数,
最小个数,比最小个数少一,比最大个数多一的数作为 测试数据 ==》[1,100]
3. 如果程序规格说明中提到的输入或输出是一个有序集合, 应该注
意选取有序集合的第一个和最后一个元素作为测 试数据 ==>{春,夏,秋,冬}
20、场景法
场景法:用于流程方面
基本流程:正常流程
备选流程:异常流程
登录功能的逻辑
正常流程:输入正确的账号 密码登录成功
异常流程
1)正确的账号,错误的密码登录失败
2)错误的账号 正确的密码登录失败
3)错误的账号和密码登录失败
4)账号为空,密码正确登录失败
5)账号正确,密码为空登录失败
5)账号密码都为空登录失败
6)重复登录同一账号失败
7)账号被锁定了登录失败
8)手机端和电脑端是否可以同时登录
取款机
主流程:插入正确的银行卡=》输入正确的密码=》选择服务=》输入金额=》取款成功
异常流程
1)插入银行卡方向不正确
2)插入的卡消磁了
3)插入的卡挂失了
4)插入的卡缺失
5)输入错误的密码
6)插入卡后取消
7)输入的金额大于银行卡的余额
8)输入的金额大于取款机的余额
9)输入的金额大于当日银行卡的限额
10)输入的金额小于100元
11)输入的金额是小数点
21、状态迁移图(订单的状态)
已下单=》已取消订单=》待付款=》已付款==》取消付款==》待配货=》已配货=》已发货=》待收货
=》取消收货=》已签收
作业:
众安保险需求文档编写30条用例
微信发朋友圈编写20条测试点
支付宝支付功能编写20条测试点
微信发朋友圈测试点:测试点一般包括是否
1)是否能拍摄照片
2)拍摄的照片是否可以取消
3)是否可以拍摄视频
4)点击拍摄,是否可以返回
22、判定表
由4个组成部分
条件桩
条件项
动作桩
动作项
结构:由4个部分组成
1)条件桩(condition stub):列出问题的所有 条件(通常条件次序无关紧要)。
2)条件项(condition entry):列出针对它条 件的取值(所有情况下的真假值)
3)动作桩(action stub):列出问题规定可采 取的动作(顺序无约束)。
4)动作项(action entry):列出条件各种情况 的应采取的动作。
例子:12306登录功能 ==》账号 密码 验证码
条件桩:账号 密码 验证码
条件项:账号 密码 验证码==》三种组合场景
动作桩:登录成功 登录失败
动作项:条件项:账号 密码 验证码==》三种组合场景==》每种组合会得到一种结果
1为真 0为假 y 成功 n 失败
条件桩 条件项
账号 1 1 1 0 1 0 0 0
密码 1 0 1 1 0 1 0 0
验证码 1 1 0 1 0 0 1 0
动作桩 动作项
登录成功 y
登录失败 n n n n n n
23、因果图
1)因果图的基本符号
C cause ==》原因
E end ==》结果
假设1为真 0为假 与 两两为真则位真, 或 只要一个为真则为真
恒等 == ==》当原因出现的时候,结果一定出现 ==》c = 1,e = 1
非 not ==》当原因出现的时候,结果一定不出现 ==》c = 1,e =0
或 or || ==》多个原因只要有一个出现,则结果一定出现
c1 = 1 or c2 = 0 => e=1
与 且 && ==》多个原因同时出现,则结果一定出现
c1 = 1 and c2 = 1 => e=1
约束符号
E:异 ==>男女 ==》要么不选,要选只能选一个
I:或 ==》多个原因只要有一个出现,则结果一定出现c1 = 1,c2=0 ==》e=1
O:唯一 ==》必须选一个,不能同时选或者同时不选,必填项男女
R:要求 ==》南京市 ==》江苏省
M:结果与结果之间关系
面试题:
你上一家公司是怎么用因果图来设计用例的?
我们上一家公司一般不会用因果图,但是如果需求当中由因果关系的需求
我们会把因果关系中的原因作为条件桩,结果作为动作桩,从而把因果图
转化为判定表,来设计测试用例
|
|