测试第四节课:测试用例设计-接口测试
一、复习
1.测试基础
1.1测试是做什么的:
? 找问题(bug),发现问题并提出解决方案
1.2什么样的是bug:
? 应该做的没做
? 不应该出错的出错了
? 做多了
? 大家都知道应该这样做,你做的不符合
? 我觉得不好的地方
1.3 IT企业工作整体的流程
? 需求分析—>计划—>设计—>编码—>测试(单元测试—集成测试(接口测试)— 系统测试—验收测试)—>上线—>运维
1.4 接口测试
? 测试计划—>设计(用例设计-脚本)—>执行测试—>bug/总结报告
2. fiddler
? 抓包、发修改请求、修改响应、中断
二、测试用例的设计:
1.方法
? 等价类划分、
? 边界值测试、
? 输入域分析法、
? 输出域覆盖法、
? 错误猜测、
? 异常分析、
? 正交实验法
? 场景流程分析法、
? 决策表(判定表)、
? 因果图、
? 状态迁移图
2.黑盒用例设计
? 计算器-所有可能性都测试到不现实-穷举测试。
2.1分析输入数据
? 有效+无效
? 有效—数字(再分整数、小数、负数、正数…)
? 无效—字母、特殊字符—符号汉字—空格—空。
? 组合输入数据:有效+有效…,有效+无效…,无效+无效
2.2 等价类划分
? 对一个等价关系而言,某个元素相应的等价类是指与其等价的所有元素的集合
2.3设计测试用例的步骤
? 划分等价类
? 确定测试用例:解决如何组合各个被测条件等价类的问题
? 完全组合:并集为全集
? 部分组合:并集非全集
在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类。
例如:用户连续输入错误密码的次数最多为3次。
有效:用户连续输入错误密码的次数<=3次,无效:用户连续输入错误密码的次数>3;
有效:1、错对,2、错错对 3、错对错错对 无效:错错错对 。
在输入条件是一个布尔量的情况下,可确定一个有效等价类。
例如:单选的选中与不选中 单选按钮:00,01,10,11
在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类。
例如:核对日期的有效性,初步有效等价类是1<=Month<=12,1<=Day<=31
月份:1-12,12个有效,无效:0,>12整数,小数,其他的。
天:1-31有效,无效,小于1大于31.
大月31天,小月30天,二月28或29天 。
2.4 边界值测试法
最大值和最小值加一减一,一个限制中的数,一个超大值
三、实践
1.测试JuiceShop注册和登陆。使用python和工具fiddler
1.1 输入数据分析
? 邮箱:文本框 @ .符合邮箱格式,内容,长度不知道,必填,不可以重复 ,密码:文本框,内容,长度不知道,必填,可以重复。登录:按钮,单击,登陆成功。登陆不成功提交信息。
1.2 进行探索性测试
登录:
注册:
2.使用python发请求添加购物车一个新商品。(必须登陆,需要登陆证书…)
四、作业:
某程序规定:
"输入三个整数 a 、 b 、 c 分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型,当此三角形为一般三角形、等腰三角形及等边三角形时,分别作计算 … "。
用等价类划分方法为该程序进行测试用例设计。(三角形问题的复杂之处在于输入与输出之间的关系比较复杂。)
分析:分析题目中给出和隐含的对输入条件的要求: (1)整数 (2)三个数 (3)非零数 (4)正数 (5)两边之和大于第三边 (6)等腰 (7)等边 如果 a 、 b 、 c 满足条件( 1 ) ~ ( 4 ),则输出下列四种情况之一:
1)如果不满足条件(5),则程序输出为 " 非三角形 " 。
2)如果三条边相等即满足条件(7),则程序输出为 " 等边三角形 " 。
3)如果只有两条边相等、即满足条件(6),则程序输出为 " 等腰三角形 " 。
4)如果三条边都不相等,则程序输出为 " 一般三角形 " 。
1.输入数据:a=3,b=4,c=5 预期结果:直角三角形
2.输入数据:a=3,b=3,c=7预期结果:等腰三角形
3.输入数据:a=3,b=3,c=3 预期结果:等边三角形
4.输入数据:a=3,b=4,c=0 预期结果:非三角形
5.输入数据:a=-3,b=4,c=5 预期结果:非三角形
6.输入数据:a=3,b=-4,c=5 预期结果:非三角形
7.输入数据:a=3,b=4,c=2 预期结果:非三角形
8.输入数据:a=99999999,b=4,c=5 预期结果:非三角形
9.输入数据:a= ,b= ,c= 预期结果:非三角形
10.输入数据:a=3,b= ,c=5 预期结果:非三角形
11.输入数据:a=,b=,c= 预期结果:非三角形
12.输入数据:a=3.0,b=4.0,c=2.0 预期结果:非三角形
13.输入数据:a=3.6,b=4.2,c=2.2 预期结果:非三角形
|