功能测试用例设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测试结果。

等价类划分有两种不同的情况:

有效等价类:是指对于程序的规格说明来说是合理的、有意义的输 入数据构成的集合。利用有效等价类可检验程序是否实现了规格说 明中所规定的功能和性能。

无效等价类:与有效等价类的定义恰巧相反。
设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合
理的数据,也要能经受意外的考验。这样的测试才能确保软件具有更高

程序员应避免检查自己的程序。

在设计测试用例时,应当包括合理的输入条件和不合理的
输入条件。
软件测试的原则

充分注意测试中的群集现象。经验表明,测试后程序中残 存的错误数目与该程序中已发现的错误数目成正比。 严格执行测试计划,排除测试的随意性。



应当对每一个测试结果做全面检查。
妥善保存测试计划,测试用例,出错统计和最终分析报告, 为维护提供方便。
在执行测试用例时,能否记录哪些通过?哪些失败; 当前测试是否按计划进行?

上次执行测试用例时通过的百分比是多少?
测试用例跟踪管理方式:测试用例追踪表
测试用例的意义
使用测试用例的好处主要体现在以下几个方面:

在开始实施测试之前设计好测试用例,可以避免盲目测试并提高测试 效率。

测试用例的使用令软件测试的实施重点突出、目的明确。
输入条件 … … 有效等价类 … … 无效等价类 … …
确定测试用例
根据已列出的等价类表,按以下步骤确定测试用例:

测试用例的代表性:能够代表并覆盖各种合理的和不合理、 合法的和非法的、边界的和越界的、以及极限的输入数据、 操作和环境设臵等;

测试结果的可判定性:即测试执行结果的正确性是可判定
的,每一个测试用例都应有相应的期望结果;

测试结果的可再现性:即对同样的测试用例,系统的执行
结果应当是相同的。
测试用例的特征
黑盒测试用例的设计方法

具体的黑盒测试用例设计方法包括等价类划分法、边界值 分析法、场景法、错误推测法、因果图法、判定表驱动法、 正交试验设计法、功能图法等。

这些方法是比较实用的,但采用什么方法,在使用时自然
要针对开发项目的特点对方法加以适当的选择。
等价类划分法

等价类划分是一种典型的黑盒测试方法,用这一方法设计 测试用例完全不考虑程序的内部结构,只根据对程序的需 求和说明,即需求规格说明书。
软件测试的目的

测试是程序的执行过程,目的在于发现错误; 一个好的测试用例在于能发现至今未发现的错误; 一个成功的测试在于发现了至今未发现的错误。
软件测试的目的
换言之,测试的目的是
想以最少的时间和人力,系统地找出软件中潜在的各种错误和缺
陷。如果我们成功地实施了测试,我们就能够发现软件中的错误。
测试用例是软件测试的核心

如何以最少的人力、资源投入,在最短的时间内完成测试, 发现软件系统的缺陷,保证软件的优良品质,则是软件公 司探索和追求的目标。

测试用例是测试工作的指导,是软件测试的必须遵守的准
则。更是软件测试质量稳定的根本保障。
什么是测试用例

所谓的测试用例就是将软件测试的行为活动,做一个科学化的
测试的附带收获是,它能够证明软件的功能和性能与需求说明相
符ຫໍສະໝຸດ Baidu。
实施测试收集到的测试结果数据为可靠性分析提供了依据。 测试不能表明软件中不存在错误,它只能说明软件中存在错误。
软件测试的原则

应当把“尽早地和不断地进行软件测试”作为软件开发者 的座右铭。

测试用例应由测试输入数据和对应的预期输出结果这两部 分组成。
在软件版本更新后只需修正少部分的测试用例便可展开测试工作,降 低工作强度、缩短项目周期。

功能模块的通用化和复用化使软件易于开发,而相对于功能模块的测
试用例的通用化和复用化则会使软件测试易于开展,并随着测试用例 的不断精化其效率也不断攀升。
测试用例的意义

组织性-有利于测试的组织; 功能覆盖-确保功能不被遗漏; 重复性-有利于测试的重复; 跟踪-有利于测试的跟踪; 测试确认-在少数高风险的测试中,必须证明确实执行了 计划执行的测试;
3、针对功能的测试需求进行测试用例设计, 如下表。
Case ID 1 2 3 1.输入[用户 名]文本框 2.输入[密码] 设定[用 文本框 户名] 3.输入[验证] 文本框 4.点击[登录] 按钮 功能点 测试项 操作步骤 方法 测试数据 6位char型数据 7位char型数据 边界 29位char型数据 高 优先级 高 高 正确 结果 正常 登录

可能采用的
测试数据组:
232×232=264

如果测试一组数据需要1毫秒,一年工作365×24小时,完成所有 测试需5亿年。
白盒测试

此方法把测试对象看做一个透明的盒子,它允许测试人员 利用程序内部的逻辑结构及有关信息,设计或选择测试用 例,对程序所有逻辑路径进行测试。

通过在不同点检查程序的状态,确定实际的状态是否与预 期的状态一致。因此白盒测试又称为结构测试或逻辑驱动 测试。
什么是测试用例

因为我们不可能进行穷举测试,为了节省时间和资源、提 高测试效率,必须要从数量极大的可用测试数据中精心挑 选出具有代表性或特殊性的测试数据来进行测试。

目前研究室测试过程中,所有的测试用例都放在《测试大
纲》中,使用测试大纲的好处:

保证测试功能不被遗漏; 使得功能不被重复测试,合理安排测试人员; 使得软件测试不依赖于个人;
测试用例内容

实施一次测试而向被测系统提供的输入数据、操作或各种环境 设臵。

对交互式系统,软件交互执行过程的控制也是一种测试用例。 测试用例的设计与生成是依据测试大纲对其中每个测试项目的 进一步实例化。比如:
对于一个输入项的测试,应当设计一组测试数据,包括合法的、
边界的和非法的数据等。
测试用例设计生成的基本准则
的可靠性。
确定等价类的原则

在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类 和两个无效等价类。

在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可
以确立一个有效等价类和一个无效等价类。

在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。 在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的
软件测试的对象

软件测试并不等于程序测试。软件测试应贯穿于软件定义 与开发的整个期间。 需求分析、概要设计、详细设计以及程序编码等各阶段所

得到的文档,包括需求规格说明、概要设计规格说明、详
细设计规格说明以及源程序,都应成为软件测试的对象。
测试方法

两种常用的测试方法
黑盒测试 白盒测试
黑盒测试

最有可能抓住错误的; 不是重复的、多余的; 一组相似测试用例中最有效的; 不要太简单,也不要太复杂。
测试用例的组织和跟踪
在执行测试过程中,会遇到如下问题:

计划执行哪些测试用例?执行需要多少时间?一轮测试需要多少测试人 员?

能否挑出测试套装(相关测试用例子集)来测试某些特性或软件部分?

这种方法是把测试对象看做一个黑盒子,测试人员完全不 考虑程序内部的逻辑结构和内部特性,只依据程序的需求 规格说明书,检查程序的功能是否符合它的功能说明。

黑盒测试又叫做功能测试或数据驱动测试。
黑盒测试

黑盒测试方法是在程序接口上进行测试,主要是为了发现 以下错误:
是否有不正确或遗漏了的功能? 在接口上,输入能否正确地接受? 能否输出正确的结
测试用例设计
2013年7月11日
软件测试的目的
基于不同的立场,存在着两种完全不同的测试目的。

从用户的角度出发,普遍希望通过软件测试暴露软件中隐
藏的错误和缺陷,以考虑是否可接受该产品。

从软件开发者的角度出发,则希望测试成为表明软件产品
中不存在错误的过程,验证该软件已正确地实现了用户的
要求,确立人们对软件质量的信心。
白盒测试
软件人员使用白盒测试方法,主要想对程序模块进行如下的检查: 对程序模块的所有独立的执行路径至少测试一次; 对所有的逻辑判定,取“真”与取“假”的两种情况都至少测试 一次; 在循环的边界和运行界限内执行循环体;
测试内部数据结构的有效性。
对一个具有多重选择和循环嵌套的程序,不同的路径数目可能是天 文数字。
示例
以“用户登录”为例,根据已制定好的功能 的测试需求,设计功能的测试用例。 1、“用户登陆”界面如下图 。
2、软件的功能测试需求如下表。
需求编号 11.1 11.2 11.3 11.4 11.5 11.6 11.7 11.8 用户登录 失败 失败 原因 用户登录 成功 功能分类 第一层 启动条件 功能分类第 二层 -常规 功能点测试项 “用户登录”页面正常打开 [登录]成功,页面跳转至用 户Default.aspx画面 设定[用户名] 必须 输入项 设定[密码] 设定[验证码] 检查数据库连接 检查Web服务连接 检查网络连接是否超时 优先级 高 高 高 高 高 高 高 高
情况下,可确立n个有效等价类和一个无效等价类。

在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则) 和若干个无效等价类(从不同角度违反规则)。

在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将
该等价类进一步地划分为更小的等价类。
建立等价类表

在确立了等价类之后,建立等价类表,列出所有划分出的 等价类:
正常 登录
正常 登录 正常 登录 正常 登录
4
5
30位char型数据
等价类 8-28位中任意位 数的char型数据


Case ID 6 7
功能点 测试项
操作步骤
方法
测试数据 6位char型数据 7位char型数据
优先级 高 高
正确 结果 正常 登录 正常 登陆
8
9 10 11
设定 [密码]
1.输入[用户名] 文本框 2.输入[密码]文 本框 3.输入[验证]文 本框 4.点击[登录]按 钮
果?
是否有数据结构错误或外部信息(例如数据文件)访问
错误?
性能上是否能够满足要求? 是否有初始化或终止性错误?
黑盒测试

用黑盒测试发现程序中的错误,必须在所有可能的输入条 件和输出条件中确定测试数据,来检查程序是否都能产生 正确的输出。

但这是不可能的。
黑盒测试

假设一个程序P有输入量X和Y及输出量Z。在字长为32位的计算机 上运行。若X、Y取整数,按黑盒方法进行穷举测试:

由于穷举测试工作量太大,以致于无法实际完成,促使我
们在大量的可能数据中选取其中的一部分作为测试用例。
等价类划分法

等价类划分法是把程序的输入域划分成若干部分,然后从每个部分中 选取少数代表性数据当作测试用例。

每一类的代表性数据在测试中的作用等价于这一类中的其他值,也就
是说,如果某一类中的一个例子发现了错误,这一等价类中的其他例
子也能发现同样的错误;反之,如果某一类中的一个例子没有发现错 误,则这一类中的其他例子也不会查出错误。

使用这一方法设计测试用例,首先必须在分析需求规格说明的基础上
划分等价类,列出等价类表。
划分等价类和列出等价类表

可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个
数据作为测试的输入条件,就可以用少量代表性的测试数据取得较好的
边界
14位char型数据
15位char型数据 等价类 等价类 8-13位中任意位数的 char型数据 系统提供验证码

高 高 高
正常 登录
正常 登录 正常 登录 正常 登录
设定 [验证 码]
示例分析:


编号1-4考虑的是用户名有效域的边界值测试,其 中用户名为6-30位char类型,所以有效域的边界 值位6、7、29、30。如果范围是最大全角10个文 字,设计时需考虑10个全角和20个半角的情况。 全角考虑汉字,半角考虑英文和数字,混合输入 考考全角、半角、英文、汉字、字符、数字。 编号5考虑的是用户名有效域的等价类测试,只要 在有效域范围内任何数据都可。所以设计测试用 例时为8-28位中任意位数的char型数据。
组织归纳。

软件测试是有组织性、步骤性和计划性的,而设计软件测试用 例的目的,就是为了能将软件测试的行为转换为可管理的模式。

软件测试是软件质量管理中最实际的行动,同时也是耗时最多
的一项。

基于时间因素的考虑,软件测试行为必须能够加以量化,才能 进一步让管理阶层掌握所需要的测试过程,而测试用例就是将 测试行为具体量化的方法之一。
相关文档
最新文档