测试用例设计概述——需求分析与测试用例设计方法

发表于:2018-1-11 11:36

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Ftopia    来源:个人博客

  以下为组内分享的一篇有关测试用例设计的概述,主要从需求分析、测试用例设计方法这两方面做了概述介绍。
  以下排版是为了生成html(类似ppt形式)的展示方式,也可直接查看此篇的 PPT形式HTML 。
  测试用例设计
  需求,你真的理解么?
  需求的分层理解
  ●用户需求
  ●业务需求
  ●功能需求
  测试工作的重点
  
  测试分析的级别
  参照物
  ●需求文档
  ●交互文稿
  ●设计图、原型图
  ●API设计文档
  产品认知及理解
  友商同类产品
  老版本 VS 新版本
  代码及底层实现
  用例设计方法论
  ●等价类划分
  ●边界值
  ●错误推测
  ●因果图
  ●功能图分析
  ●场景设计发
  ●判定表驱动分析
  ●正交实验设计
  …
  等价类划分
  把所有可能的输入/操作划分成若干部分(子集),然后从每个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。
  ●有效等价类
  ●无效等价类
  实例:输入三个整数a、b、c分别作为三边的边长构成三角形。通过程序判定所构成的三角形的类型(非三角形、一般三角形、等腰三角形、等边三角形);用等价类划分方法为该程序进行测试用例设计。
  边界值
  并非只是狭隘的数值边界,常用的边界值还有如下:
  1.对16-bit 的整数而言 32767 和 -32768 是边界
  2.屏幕上光标在最左上、最右下位置
  3.报表的第一行和最后一行
  4.数组元素的第一个和最后一个
  5.循环的第 0 次、第 1 次和倒数第 2 次、最后一次
  6.时间上的边界,如 1970/01/01
  …
  错误推测
  基于经验和直觉推测程序可能存在的错误。
  思路:分析程序中最易出错的场景,在此基础上有针对性的设计用例。
  ●深度熟悉被测系统的业务、需求
  ●缺陷分布情况分析,如历史Bug
  ●对代码实现有一定的了解(程序猿代码习惯、高危代码)
  因果图
  等价类划分和边界值方法着重考虑输入,但未考虑输入条件组合、及其输入条件间的制约关系。
  类似Visio流程图中的因果图
  实例:饮料自动售卖机
  因果图
  其规格说明如下:
  若投入5角钱或1元钱的硬币,押下〖橙汁〗或〖啤酒〗的按钮,则相应的饮料就送出来。
  若售货机没有零钱找,则一个显示〖零钱找完〗的红灯亮,这时在投入1元硬币并押下按钮后,饮料不送出来而且1元硬币也退出来;
  若有零钱找,则显示〖零钱找完〗的红灯灭,在送出饮料的同时退还5角硬币。
  列出原因和结果
  可结合判定表及正交分析等来进行具体用例的设计
  判定表驱动分析
  判定表驱动分析是用来做多逻辑条件下执行不同操作的一种方式
  ●优点:能把复杂的问题按各种可能的情况列举出来,简明而易于理解,也可避免遗漏。
  ●缺点:不能表达重复执行的动作,例如循环结构。
  正交实验设计
  正交试验法是研究多因素、多水平的一种试验法,它是利用正交表来对试验进行设计,通过少数的试验替代全面试验,根据正交表的正交性从全面试验中挑选适量的、有代表性的点进行试验,这些有代表性的点具备了“均匀分散,整齐可比”的特点。
  本规范只讨论各因素是相互独立的正交试验法,各因素相互影响的正交试验法在我们设计测试用例的时候用不到,所以不提。
  功能图分析
  功能图方法中,要用到逻辑覆盖和路径测试的概念和方法,其属白盒测试方法中的内容.逻辑覆盖是以程序内部的逻辑结构为基础的测试用例设计方法。该方法要求测试人员对程序的逻辑结构有清楚的了解。
  由于覆盖测试的目标不同,逻辑覆盖可分为:语句覆盖,判定覆盖,判定-条件覆盖,条件组合覆盖及路径覆盖。下面我们指的逻辑覆盖和路径是功能或系统水平上的,以区别与白盒测试中的程序内部的.
  场景设计法
 
  测试用例设计综合策略
  Myers提出了使用各种测试方法的综合策略:
  1.在任何情况下都必须使用边界值分析方法,经验表明用这种方法设计出测试用例发现程序错误的能力最强。
  2.必要时用等价类划分方法补充一些测试用例。
  3.用错误推测法再追加一些测试用例。
  4.对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度,如果没有达到要求的覆盖标准,应当再补充足够的测试用例。
  5.如果程序的功能说明中含有输入条件的组合情况,则一开始就可选用因果图法。
  测试用例的设计步骤
  1.基本功能测试用例
  2.边界值测试用例
  3.状态转换测试用例
  4.错误猜测测试用例
  5.异常测试用例
  6.压力、性能测试用例
  测试用例的优化扩展
  1.利用上述设计测试用例各种方法不断的对用例进行分解与合并
  2.采用算法理论等进化测试用例
  3.探索式测试
  4.大数据测试

上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号