测试用例设计实战 1

by 飞儿

目录

  • 测试用例基础
  • 测试用例设计方法

测试用例基础

测试用例概念

  • 测试用例(Test Case)是为特定的目的而设计的一组测试输入、执行条件和预期的结果
  • 通过大量的测试用例来检验软件的运行效果
  • 它是指导测试工作进行的依据

产品举例

雪球发讨论

测试用例示例

测试用例的组成

  • 用例编号
  • 模块
  • 测试点(测试标题)
  • 优先级
  • 前提条件
  • 测试步骤
  • 期望结果(预期结果)
  • 实际结果

测试用例的优先级

测试用例根据重要性分成一定的等级

  • P0
  • P1
  • P2
  • P3

测试用例设计工具

  • 思维导图
  • excel

思维导图

表格形式

测试用例的作用

  • 指导测试的实施
  • 规划测试数据的准备
  • 编写测试脚本的"设计规格说明书"
  • 评估测试结果的度量基准
  • 分析缺陷的标准

测试用例设计方法

问题

计算器:到底输入几组数据才算测试完毕?

等价类划分法

  • 用户所有可能输入的数据,划分成了若干个子集,然后从每一个子集当中选取少数具有代表性的数据作为测试用例,这种测试用例我们称为“等价类划分法”。
  • 等价类划分是一种重要的、常用的黑盒测试方法,不需要考虑程序的内部结构,只需要考虑程序的输入规格即可。它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。
  • 在有限的测试资源的情况下,用少量有代表性的数据得到比较好的测试效果。

等价类分类

  • 有效等价类:指符合《需求文档》,输入合理的数据集合
  • 无效等价类:指不符合《需求文档》,输入不合理的数据集合

等价类设计步骤

  1. 先划分等价类:找出所有可能的分类
  2. 确定有效等价类:需求中的条件
  3. 确定无效等价类:与条件相反的情况,再找到特殊情况
  4. 从各个分类中挑选测试用例数据

等价类划分方法

在确立了等价类之后,可按下表的形式列出所有划分出的等价类表

输入条件 有效等价类 无效等价类

实例

例:计算 1—100的整数之和(包括1和100)

等价类总结

  • 长度
  • 类型
  • 组成规则
  • 是否为空
  • 是否重复
  • 是否去除空格

边界值

  • 大量的软件测试实践表明,故障往往出现在定义域或值域的边界上,而不是在其内部。为检测边界附近的处理专门设计测试用例,通常都会取得很好的测试效果。
  • 边界值分析法是一种很实用的黑盒测试用例方法,它具有很强的发现故障的能力。
  • 边界值分析法是作为对等价类划分法的补充,测试用例来自等价类的边界。

边界值举例

  • 输入的参数值必须大于等于 0 同时小于 100 的整数
  • 0 <= 参数 <100

边界值分析

  • 正确代码:

num>-1 或 num>=0 | num<100 或 num<=99

  • 错误代码:

num>=-1 或 num>0 或 num>=1 | num<=101 或 num<101 或 num<=100

边界值确定

  • 边界上的点
  • 边界值两边的点
  • 正好等于,刚刚大于,刚刚小于
0 100
-1, 0, 1 99, 100, 101

实例

例:计算 1—100 的整数之和(包括 1 和 100)

使用边界值分析法补充用例

边界值总结

  • 确定边界情况
  • 选取正好等于、刚刚好大于或刚刚好小于边界值作为测试数据
  • 确定各个值的等价类

错误推测法概念

  • 指利用直觉和经验猜测出出错的可能类型,有针对性的列举出程序中所有可能的错误和容易发生错误的情况
  • 列举出可能犯的错误或错误易发生的清单,然后根据清单编写测试用例;
  • 这种方法很多程度是凭经验进行的

错误推测法

采用错误推测法,最重要的是要思考和分析测试对象的各个方面,多参考以前发现的 Bug 的相关数据、总结的经验,个人多考虑异常的情况、反面的情况、特殊的输入,以一个攻击者的态度对待程序,才能够设计出比较完善的测试用例

课后作业

结合等价类划分方法和边界值分析的方法设计测试用例

需求:输入用户密码

  1. 用户密码为 6-8 位
  2. 只能包含字母和数字

输出:输入正确提示成功,输入错误提示失败