软件测试PPT-第三章-测试用例的设计方法课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《软件测试PPT-第三章-测试用例的设计方法课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件 测试 PPT 第三 设计 方法 课件
- 资源描述:
-
1、.软件测试.3.1 软件测试用例的概述3.2 黑合测试用例的设计3.3 白合测试用例的设计第三章第三章 软件测试用例的设计软件测试用例的设计.3.1.1 测试用例的基本概念3.1.2 测试用例的设计原则与特性3.1.3 测试用例的编制3.1 测试用例的基本概念. 1 1、什么是测试用例、什么是测试用例u测试用例(Test Case)是为达到最佳的测试效果或高效的揭露隐藏的错误而精选的少量有代表性或特殊性测试数据。 软件测试的灵魂-测试用例 例:测试Yahoo邮箱的登录程序,假设存在一用户为user,密码为12345 。3.1.1 3.1.1 测试用例的概念测试用例的概念.用例编号测试步骤输入数
2、据期望结果测试结果1输入用户名和密码,点击“登录雅虎服务”按钮用户名:user密码:12345成功登录user的个人邮箱2输入用户名和密码,点击“登录雅虎服务”按钮用户名:user密码:123456提示“密码错误,请重新输入!”3不输入用户名和密码,直接点击“登录雅虎服务”按钮提示“请输入用户名和密码!”.3.1.1 3.1.1 测试用例的概念测试用例的概念.工程硕士6u 测试用例包括测试环境、测试步骤、测试数据和预期结果。即测试用例=输入+输出+测试环境+测试步骤输入:测试数据和操作步骤输出:期望结果测试环境:软硬件环境配置3.1.1 3.1.1 测试用例的概念测试用例的概念. 2 2、编制
3、测试用例的重要性、编制测试用例的重要性u为什么要做测试用例,主要原因有如下几点:完全测试是不可能的;输入量太大;输出结果太多;软件实现路径太多;软件说明书没有客观标准,软件缺陷的标准也不同。3.1.1 3.1.1 测试用例的概念测试用例的概念.u使用测试用例的好处: 可以避免盲目测试并提高测试效率。 使软件测试的实施重点突出、目的明确。 在软件版本更新后只需修正少部分的测试用例便可展开测试工作,降低工作强度、缩短项目周期。 测试用例的通用化和复用化则使软件测试易于开展。3.1.1 3.1.1 测试用例的概念测试用例的概念.u测试用例的作用 指导测试的实施 规划测试数据的准备 评估测试结果的度量
4、基准 分析缺陷的标准 编写测试脚本的设计规格说明书 3.1.1 3.1.1 测试用例的概念测试用例的概念. 1 1、测试用例的设计原则、测试用例的设计原则 保证测试用例的明确性。测试人员要尽量避免测试用例存在含糊的因素,否则会影响测试工作进行与测试结果的准确性(模棱两可)。在测试过程中,测试用例的测试结果是唯一的,即通过、没通过或未进行测试。如果测试没有通过,一般会生成相应的测试错误报告;如果测试没有进行,也会生成相应的原因说明报告,如测试用例本身具有错误性、测试用例的不适用性等等。3.1.2 3.1.2 测试用例的设计原则与特性测试用例的设计原则与特性.保证测试用例的代表性。尽量将具有相似功
5、能的测试用例抽象合并,使一个测试用例具有测试一类或一系列的系统需求。保证测试用例的简洁性。冗长与复杂的测试用例是不应该出现的,否则可读性差、不利于测试人员理解和操作。简洁的测试用例可以让测试过程目的明确,让测试结果具有唯一性。3.1.2 3.1.2 测试用例的设计原则与特性测试用例的设计原则与特性. 2 2、测试用例的特性、测试用例的特性 有效性:测试用例是测试人员测试过程中的重要参考依据,不同的测试人员根据相同的测试用例所得到的输出应该是一致的。 可复用性:良好的测试用例具有重复使用的功能,这样就可以大大地节约测试的时间,提高测试的效率。3.1.2 3.1.2 测试用例的设计原则与特性测试用
6、例的设计原则与特性. 易组织性:测试用例可能有成千上万个,有效地组织这些测试用例,分门别类地提供给测试人员参考和使用,才是一个好的测试计划。 可评估性:从测试管理的角度,测试用例的通过率和软件缺陷的数目是软件产品质量好坏的测试标准。 可管理性:测试用例可以作为检验测试人员进度、工作量以及跟踪/管理测试人员工作效率的因素。3.1.2 3.1.2 测试用例的设计原则与特性测试用例的设计原则与特性.14有效性有效性仿效性仿效性经济性经济性修改性修改性测试用例是否能够发现缺陷或者至少可能发现缺陷。测试用例的代表程度,可测试多项内容,因而减少测试用例数量。实现、调试和运行测试用例的成本修改和维护测试用例
7、的难易程度3 3、测试用例的度量标准、测试用例的度量标准3.1.2 3.1.2 测试用例的设计原则与特性测试用例的设计原则与特性. 1 1、测试用例编制的依据、测试用例编制的依据u需求说明以及相关文档;u设计说明及相关文档(概要设计,详细设计等);u与开发组交流的记录(可以是开发人员的一个解释);u基本成型的UI;u编写测试用例的文档模板和符合内部的规范要求。测试用例有相关的编制标准,如ANSI/IEEE829-1983标准中列出的关于软件测试用例的相关编制规范和模板。3.1.3 3.1.3 测试用例的编制测试用例的编制. 2 2、测试用例的编制过程、测试用例的编制过程u 分析软件程序的工作流
8、程。 目的是了解用户与系统交互时的操作和步骤,以确定与描述测试软件所需的测试用例。3.1.3 3.1.3 测试用例的编制测试用例的编制.u 确定并制定测试用例 目的是为每项测试需求编写适当的测试用例。 软件测试用例主要根据测试用例编写要素,结合相应的软件需求文档,在掌握一定测试用例设计方法的基础上,设计出比较全面、合理的测试用例,并生成规范的测试用例表。 如果测试过以前的版本,则测试用例已经存在,应复审这些测试用例。3.1.3 3.1.3 测试用例的编制测试用例的编制.u确定测试用例数据 根据测试用例表的内容,确定支持这些测试用例的实际值。测试用例数据一般包括: 用作输入的数据值 用作预期结果
9、的数据值 用作支持测试用例所需的数据 u测试用例的修改更新 测试用例在形成文档后还需要不断完善,缘故在于: 在测试过程中发现设计测试用例时考虑不周; 在软件交付使用后反馈的软件缺陷,而缺陷又是因测试用例存在漏洞造成; 软件自身的新增功能以及软件版本的更新,测试用例也必须配套修改更新。 3.1.3 3.1.3 测试用例的编制测试用例的编制. 3 3、测试用例的管理、测试用例的管理 测试管理软件的主要功能有三个:记录测试用例文档的关键内容、 可供测试实施时及时输入测试情况、实现自动生成测试结果文档。 3.1.3 3.1.3 测试用例的编制测试用例的编制. 4 4、测试用例的文档、测试用例的文档u
10、测试用例文档由简介和测试用例两部分组成。u 测试用例的文档模板。用于描述输入、动作、时间和一个期望结果。u 测试用例的基本要素。包括测试用例编号、测试标题、测试模块、用例级别、测试环境、测试输入、执行操作、预期结果。不同的公司会有不同的测试用例模板。3.1.3 3.1.3 测试用例的编制测试用例的编制. 用例编号:每个测试用例都有唯一的标识号,用以区别其他测试用例。测试用例的编号有一定的规则:项目名称测试阶段类型(系统测试阶段)编号,如PROJECT1-ST-001,定义测试用例编号,是为了便于查找与跟踪测试用例。 测试标题:测试用例标题应清楚表达测试用例的用途,如“测试用户登录时输入错误密码
11、时,软件的响应情况 ” 。 测试模块:指明并简单描述测试用例是用来测试哪些项目、子项目或软件特性的。3.1.3 3.1.3 测试用例的编制测试用例的编制. 用例级别:测试用例的优先级别,可以粗略地分为 “高”和“低”两个级别,也可以分为“高”、“中”、“低”三个级别。一般来说,软件需求的优先级和测试用例的优先级一致,即如果软件需求的优先级为“高”,该需求的测试用例的优先级也为“高”;反之亦然。 测试环境:执行测试用例所需的硬软件环境。在整个测试模块中需要对应说明整个测试的特殊环境要求,在单个测试用例的测试环境需要表述该测试用例所单独需要的特殊环境要求。3.1.3 3.1.3 测试用例的编制测试
12、用例的编制. 测试输入:用来执行测试用例的输入要求。输入可以是数据、文件或具体操作。根据需求中的输入条件,确定测试用例的输入,测试用例的输入对软件需求当中的输入有很大的依赖性,如果软件需求中没有很好的定义需求的输入,那么测试用例设计中会遇到很大的障碍。 执行操作:执行测试用例所需的每一步操作。对于复杂的测试用例,测试用例的输入需要分为几个步骤完成,这部分内容在操作步骤中详细列出。3.1.3 3.1.3 测试用例的编制测试用例的编制. 预期结果:描述被测项目或特性所希望或要求达到的输出或指标。一般来说,预期结果主要根据软件需求中的输出得出,如果在实际测试过程中,得到的实际测试结果与预期结果不符,
13、那么测试不通过;反之则测试通过。3.1.3 3.1.3 测试用例的编制测试用例的编制.软 件 测 试 用 例元 素含 义给出定义的测试角色用例编号被标识过的测试需求测试标题测试用例的描述测试模块指明测试的具体对象用例级别指明测试用例的优先级别测试需求分析测试环境进入测试实施步骤所需的资源及其状态。测试输入运行本测试所需的代码和数据,包括测试模拟程序和测试模拟数据测试设计(描述性定义)执行操作建立测试运行环境、运行被测对象、获取测试结果的步骤序列预期结果用于比较测试结果的基准测试实现(计算机表示)评价标准根据测试结果与预期结果的偏差,判断被测对象质量状态的依据测试用例的基本要素3.1.3 3.1
14、.3 测试用例的编制测试用例的编制.工程硕士26测试用例的内容(示例)1 用例编号10用例类别2 用例名称11用例状态3 测试目的12用例设计人4 输入数据13创建时间5 测试步骤14用例评审人6 测试脚本15评审时间7 预期结果16评审结果8 响应时间17执行结果9 实际输出18相关模块3.1.3 3.1.3 测试用例的编制测试用例的编制.工程硕士27测试用例模板(示例)项目名称程序版本测试环境硬件环境软件环境网络环境编制人编制时间功能模块用户登录功能特性测试目的预置条件用例编号测试步骤输入数据预期结果测试结果DL0013.1.3 3.1.3 测试用例的编制测试用例的编制. 测试用例是测试工
15、作的核心,应该尽量设计的周密细致,这样才能更好的保证测试工作的质量。以一个实现登录功能的小程序为例,它允许用户选择城市和地区,输入自己的账号和密码。如图1-9所示,通过Alt-F4组合键和“Exit”按钮来终止程序,Tab键在区域中间移动。.操操 作作 员员 登登 录录 选 择 城 市 选 择 地 区 城 市地 区操 作 员密 码提 交退 出登录窗口 根据组成页面的具体元素,做了比较全面的测试用例。.(1)下拉框和输入框测试用例测试内容测试内容输入操作输入操作预期输出预期输出实际结果实际结果下拉框下拉框未和后台数据库绑定未和后台数据库绑定(显示列表元素固定)(显示列表元素固定)不允许列表中出不
16、允许列表中出现现NULL现象,现象,固定固定“请选择请选择-”已和后台数据库绑定已和后台数据库绑定(显示列表元素活动)(显示列表元素活动)不允许列表中出不允许列表中出现现NULL现象,现象,固定固定“请选择请选择-”输输入入框框限定字符型限定字符型输入输入12、6无无#,*等等错误提示错误提示限定型数字限定型数字输入输入测试数据测试数据无无12月、月、7*、0错误提示错误提示.(2)功能测试用例用 例应产生行为结果失败原因1.基本功能测试1.1在输入框内输入资料并且执行存储程序必须能够接受使用者的输入并且将输入值存在登录文件内1.2在输入框内不输入资料但执行储存程序必须能够检查使用者输入是否为
17、空白,同时必须能够告知使用者原因1.3检查city字段储存结果City字段输入 后存入cookies1.4检查area字段储存结果Area字段输入 后存入cookies储存结果1.5检查ID 字段储存结果ID字段输入 后存入cookies2.使用接口功能测试2.1检查输入字段的输入值必须组织使用者输入空白,同时部分字段只能输入数字.(3)各种错误数据的测试测试内容测试内容输入操作输入操作预选测试数据预选测试数据预期输出预期输出实际结果实际结果点击登录点击登录按钮按钮不完整的数据不完整的数据CityCity,areaarea,IDID,pswdpswd略略提示错误对话提示错误对话框框不正确的数据
18、不正确的数据CityCity,areaarea,IDID,pswdpswd略略提示错误对话提示错误对话框框回车操作回车操作不完整的数据不完整的数据CityCity,areaarea,IDID,pswdpswd略略提示错误对话提示错误对话框框点击点击“退退出出”按钮按钮无无无无无无关闭当前应用关闭当前应用系统系统.(4)特殊测试测试内容测试内容输入操作输入操作预选测试数预选测试数据据预期输出预期输出操作焦点逃操作焦点逃逸逸连续连续TabTab切换,察看异常切换,察看异常无无焦点可准确回归焦点可准确回归当前操作窗口当前操作窗口分配内存不分配内存不足足启动多个应用程序或模拟启动多个应用程序或模拟多个
19、程序运行多个程序运行无无是否可以正常运是否可以正常运行行网络断线网络断线切断网络连接切断网络连接无无是否可正常抛出是否可正常抛出异常异常.3.2.1 3.2.1 等价类测试用例设计法等价类测试用例设计法3.2.2 3.2.2 边界分析测试边界分析测试用例设计用例设计法法3.2.3 3.2.3 决策表测试决策表测试用例设计用例设计法法3.2.4 3.2.4 因果图测试因果图测试用例设计用例设计法法3.2.5 3.2.5 错误猜测测试错误猜测测试用例设计用例设计法法3.2.6 3.2.6 业务流程图测试业务流程图测试用例设计用例设计法法3.2.7 3.2.7 黑盒测试用例设计方法的应黑盒测试用例设
20、计方法的应用用3.2 黑合测试用例的设计. 常用的黑盒测试用例设计方法主要有以下几种: 边界值分析 等价类 决策表 因果图法 错误猜测法 流程图法 3.2 3.2 黑合测试用例的设计黑合测试用例的设计. 1 1、等价类测试用例设计的基本思想、等价类测试用例设计的基本思想 等价类测试法是将不能穷举的测试过程进行合理分类,从等价类测试法是将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。而保证设计出来的测试用例具有完整性和代表性。等价类测试等价类测试法是把所有可能的输入数据法是把所有可能的输入数据(即程序的输入域)(即程序的输入域)划分成若干子划分成若干子集集(等价类
21、)(等价类),从每一个子集中选取少数具有代表性的数据作,从每一个子集中选取少数具有代表性的数据作为测试用例。为测试用例。每个子集中的输入具有相同揭示程序问题的能力,每个子集中的输入具有相同揭示程序问题的能力,进而达到尽可能完备同时又可避免冗余的测试。进而达到尽可能完备同时又可避免冗余的测试。 在分析需求规格说明书的基础上划分等价类,是在分析需求规格说明书的基础上划分等价类,是等价类测等价类测试用例设计的前提试用例设计的前提。 3.2.1 3.2.1 等价类测试用例设计法等价类测试用例设计法. 所谓所谓等价类是指输入域的某个子集,所有等价类的并集就等价类是指输入域的某个子集,所有等价类的并集就是
22、整个输入域。是整个输入域。在等价类中,各个输入数据对于揭露程序中的在等价类中,各个输入数据对于揭露程序中的错误都是等效的,具有等价特性。因此,测试等价类中的代表错误都是等效的,具有等价特性。因此,测试等价类中的代表值等价于对该类中其它值的测试值等价于对该类中其它值的测试,即,即如果某如果某等价等价类中的一个用类中的一个用例发现了错误,该等价类中的其它用例也能发现同样的错误;例发现了错误,该等价类中的其它用例也能发现同样的错误;反之,如果反之,如果等价类等价类中的一个用例没有发现错误,中的一个用例没有发现错误,该等价类该等价类中的中的其它用例也不会查出错误。其它用例也不会查出错误。3.2.1 3
23、.2.1 等价类测试用例设计法等价类测试用例设计法. 2 2、有效等价类与无效等价类、有效等价类与无效等价类 软件不能只接收合理有效的数据,还应具有处理异常数据软件不能只接收合理有效的数据,还应具有处理异常数据的功能,才能确保软件具有更高的可靠性。因此,在划分等价的功能,才能确保软件具有更高的可靠性。因此,在划分等价类的过程中,不但要考虑有效等价类划分,同时也要考虑无效类的过程中,不但要考虑有效等价类划分,同时也要考虑无效等价类划分。等价类划分。 有效等价类是指对有效等价类是指对需求规格说明书需求规格说明书来说,合理、有意来说,合理、有意义的输入数据所构成的集合。义的输入数据所构成的集合。利用
24、有效等价类可以检验程序是利用有效等价类可以检验程序是否满足规格说明所规定的功能和性能。否满足规格说明所规定的功能和性能。 无效等价类则和有效等价类相反,无效等价类则和有效等价类相反,对对需求规格说明书需求规格说明书是是无意义的、不合理的输入数据所构成的集合,无意义的、不合理的输入数据所构成的集合,即不满足程序输即不满足程序输入要求或者无效的输入数据所构成的集合。利用无效等价类可入要求或者无效的输入数据所构成的集合。利用无效等价类可以检验程序异常情况的处理。以检验程序异常情况的处理。3.2.1 3.2.1 等价类测试用例设计法等价类测试用例设计法.39 3 3、等价类划分的原则等价类划分的原则如
25、果输入条件规定了一个取值范围,就应确定一个有效等如果输入条件规定了一个取值范围,就应确定一个有效等价类和两个无效等价类;价类和两个无效等价类;如果输入条件规定了取值的个数,就应确定一个有效等价如果输入条件规定了取值的个数,就应确定一个有效等价类和两个无效等价类;类和两个无效等价类;如果输入条件是一个布尔表达式的条件,可以确定一个有如果输入条件是一个布尔表达式的条件,可以确定一个有效等价类和一个无效等价类效等价类和一个无效等价类如果输入条件规定了一个输入值的集合,而且程序会对每如果输入条件规定了一个输入值的集合,而且程序会对每个值进行不同处理,就应为每个输入值确定一个有效等价个值进行不同处理,就
展开阅读全文