《软件测试计划与测试用例设计PPT精选文档》由会员分享,可在线阅读,更多相关《软件测试计划与测试用例设计PPT精选文档(33页珍藏版)》请在金锄头文库上搜索。
1、目录软件测试计划概述测试计划的内容详解测试用例概述什么是测试用例为什么需要测试用例良好测试用例的特征测试用例的组成元素与范例白盒测试用例设计方法等价类测试用例设计方法边界值测试用例设计方法错误推测法测试用例设计因果图法测试用例设计测试类型与测试用例设计设计测试用例的策略选择测试用例设计工具案例研究:黑盒测试用例设计1软件测试计划概述测试计划的定义测试计划的定义 一个叙述了预定的测试活动的范围、途径、资源及进度安排的文档。它确认了测试项、被侧特征、测试任务、人员安排、以及任何偶发计划的风险。 ANSI/IEEE软件测试文档标准829-1983测试计划的作用测试计划的作用 为测试过程提供指导 测试
2、目标 测试内容 测试方法 测试时间周期 改善测试任务与测试过程的关系 提高测试的组织、规划和管理能力测试计划的内容测试计划的内容 测试项目简介 测试项 需要测试的特征 不需要测试的特征 测试的方法 (测试人员、测试工具、测试流程) 测试开始条件和结束条件 测试提交的结果与格式 测试环境(软件、硬件、网络) 测试者的任务、联系方式与培训 测试进度与跟踪方式 测试风险与解决方式 本测试计划的审批与变更方式2测试计划的内容详解 测试项目简介测试项目简介 归纳所要求测试的软件项和软件特性,可以包括系统目标、背景、范围及引用材料等。 在最高层测试计划中,如果存在下述文件,则需要引用它们:项目计划、质量保
3、证计划、有关的政策、有关的标准等。测试项测试项描述被测试的对象,包括其版本、修订级别,并指出在测试开始之前对逻辑或物理变换的要求。 被测试的特性被测试的特性指明所有要被测试的软件特性及其组合,指明每个特性或特性组合有关的测试设计说明。 不被测试的特性不被测试的特性指出不被测试的所有特性和特性的有意义的组合及其理由。 3测试计划的内容详解(续1) 测试测试方法方法描述测试的总体方法,规定测试指定特性组志需的主要活动、所需的时间。规定所希望的测试程度,指明用于判断测试彻底性的技术(如:检查哪些语句至少执行过一次)。指出对测试的主要限制,例如:测试项可用性、测试资源的可用性和测试截止期限等。 开始条
4、件和结束条件开始条件和结束条件规定各测试项的开始测试需要满足的条件测试通过和测试结束的条件。 测试环境测试环境 测试的操作系统和需要安装的辅助测试工具(来源与参数设置)软件、硬件和网络环境设置4测试计划的内容详解(续2) 测试者的任务、联系方式与培训测试者的任务、联系方式与培训 测试成员的名称、任务、电话、电子邮件等联系方式 为完成测试需要进行的项目课程培训 测试进度与跟踪方式测试进度与跟踪方式 在软件项目进度中规定的测试里程碑以及所有测试项传递时间。 定义所需的新的测试里程碑,估计完成每项测试任务所需的时间,为每项测试任务和测试里程碑规定进度,对每项测试资源规定使用期限。 报告和跟踪测试进度
5、的方式:每日报告、每周报告;书面报告、电话会议 测试风险与解决方式测试风险与解决方式 预测测试计划中的风险 规定对各种风险的应急措施(延期传递的测试项可能需要加班、添加测试人员、减少测试内容。) 测试计划的审批和变更方式测试计划的审批和变更方式 审批人和生效方式 如何处理测试计划的变更5测试用例概述如何以最少的人力、资源投入,在最短的时间内完成测试,发现软件系统的缺陷,保证软件的优良品质,则是软件公司探索和追求的目标。测试用例是测试工作的指导,是软件测试的必须遵守的准则。更是软件测试质量稳定的根本保障。 6什么是测试用例测试用例的定义测试内容的一系列情景和每个情景中必须依靠输入和输出,而对软件
6、的正确性进行判断的测试文档,称为测试用例。测试用例就是将软件测试的行为活动,做一个科学化的组织归纳。7为什么需要测试用例在开始实施测试之前设计好测试用例,避免盲目测试并提高测试效率,减少测试的不完全性;测试用例的使用令软件测试的实施重点突出、目的明确;根据测试用例的多少和执行难度,估算测试工作量,便于测试项目的时间和资源管理与跟踪;减少回归测试的复杂程度在软件版本更新后只需修正少量的测试用例便可展开测试工作,降低工作强度、缩短项目周期;功能模块的测试用例的通用化和复用化则会使软件测试易于开展,并随着测试用例的不断细化其效率也不断攀升;根据测试用例的操作步骤和执行结果,可以方便地书写软件测试缺陷
7、报告;可以根据测试用例的执行等级,实施不同级别的测试;为分析软件缺陷和程序模块质量提供依据;便于大型软件测试项目外包测试指导基础;总结:总结:软件测试是有组织性、步骤性和计划性的,为了能将软件测试的行为转换为可管理的、具体量化的模式,需要创建和维护测试用例。8良好测试用例的特征可以最大程度地找出软件隐藏的缺陷可以最高效率的找出软件缺陷可以最大程度地满足测试覆盖要求既不过分复杂、也不能过分简单使软件缺陷的表现可以清楚的判定测试用例包含期望的正确的结果待查的输出结果或文件必须尽量简单明了不包含重复的测试用例测试用例内容清晰、格式一致、分类组织9测试用例的组成元素与范例测试用例编号ID测试用例标题测
8、试的模块测试输入条件期望的输出结果其它说明ID类型类型标题标题测试步骤测试步骤期望的结果期望的结果说明说明001登录输入正确密码用户在登录界面输入正确的密码后,按回车键程序提示登录成功002登录输入错误密码用户在登录界面输入错误的密码后,按回车键程序提示输入密码错误,请重新输入003登录不输入的空密码用户在登录界面没有输入任何密码使密码为空后,按回车键程序提示用户没有输入密码,请输入程序应该告知用户没有输入密码,而不是密码错误10白盒测试用例设计方法什么是白盒测试什么是白盒测试白盒测试也称为结构测试,把程序看作一个透明的盒子,测试程序的代码书写结构和逻辑问题白盒测试用例的设计方法白盒测试用例的
9、设计方法逻辑覆盖:以程序的内部逻辑结构为基础,分为语句覆盖、判定覆盖、判定-条件覆盖、条件组合覆盖等基本路径测试:在程序控制流程的基础上,分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。白盒测试用例注意事项白盒测试用例注意事项由于测试路径可能非常多,由于时间和资源问题,选出足够多的路径测试由于深入到程序编码,通常开发人员协助测试人员书写白盒测试用例11等价类测试用例设计方法什么是黑盒测试什么是黑盒测试白盒测试也称为功能测试,把程序看作一个不透明的盒子,测试程序的功能。黑盒测试用例的设计方法黑盒测试用例的设计方法等价类划分等价类划分:在分析需求规格说明的基础上划分等价类,列出
10、等价类表。 将程序可能的输入数据分成若干个子集,从每个子集选取一个代表性的数据作为测试用例,等价类是某个输入域的子集,在该子集中每个输入数据的作用是等效的。等价类的分类:有效等价类和无效等价类。有效等价类是有意义的、合理的输入数据,可以检查程序是否实现了规格说明中所规定的功能和性能。无效等价类与有效等价类的意义相反。设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受意外的考验。这样的测试才能确保软件具有更高的可靠性。12确定等价类的方式在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。在输入条件规定了输入值的集合或者规定了“必
11、须如何”的条件的情况下,可以确立一个有效等价类和一个无效等价类。在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则)。13根据等价类创建测试用例的步骤建立等价类表,列出所有划分出的等价类:输入条件有效等价类无效等价类为每个等价类规定一个唯一的编号;设计一个新的测试用例,使其尽可能多地覆盖尚未覆盖的有效等价类。重复这一步,最后使得所有有效等价类均被测试
12、用例所覆盖;设计一个新的测试用例,使其只覆盖一个无效等价类。重复这一步使所有无效等价类均被覆盖。14边界值测试用例设计方法边界值分析法:程序的很多错误发生在输入或输出范围的边界上,因此针对各种边界情况设置测试用例,可以发现不少程序缺陷。设计方法:确定边界情况(输入或输出等价类的边界)选取正好等于、刚刚大于或刚刚小于边界值作为测试数据15确定边界值的方式如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少一、比最大个数多一的数作为测试数据。如果程序的规格说明给出的输入域或输出域是
13、有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。分析规格说明,找出其他可能的边界条件。16错误推测法测试用例设计基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例。发现程序经常出现的错误的方法:单元测试中发现的模块错误;产品的以前版本曾经发现的错误;输入数据为0或字符为空;当软件要求输入时(比如在文本框中),不是没有输入正确的信息,而是根本没有输入任何内容,单单按了Enter键;这种情况在产品说明书中常常忽视,程序员也可能经常遗忘,但是在实际使用中却时有发生。程序员总会习
14、惯性的认为用户要么输入信息,不管是看起来合法的或非法的信息,要不就会选择Cancel键放弃输入,17测试场景法设计测试用例现在的软件几乎都是用事件触发来控制流程的,事件触发时的情景便形成了场景,而同一事件不同的触发顺序和处理结果就形成事件流。这种在软件设计方面的思想也可引入到软件测试中,可以比较生动地描绘出事件触发时的情景,有利于测试设计者设计测试用例,同时使测试用例更容易理解和执行。18因果图法测试用例设计多种输入条件的组合,产生多种结果设计测试用例。设计方法:分析软件规格说明文档描述的哪些是原因(输入条件),哪些是结果(输出条件),给每个原因和结果赋予一个标示符。找出原因与结果,原因与原因
15、之间的对应关系,划出因果图在因果图上标上哪些不可能发生的因果关系,表明约束或限制条件根据因果图,创建判定表,将复杂的逻辑关系和多种条件组合很具体明确的表示出来把判定表的每一行作为依据设计测试用例。19测试类型与测试用例设计根据测试类型设计根据测试类型设计根据程序功能模块设计根据程序功能模块设计功能测试易用性测试配置测试压力测试回归测试界面测试文档测试国际化测试 测试用例1 测试用例2 测试用例3 测试用例1 测试用例2 测试用例3安装/卸载测试联机帮助测试软件更新测试联机注册测试文件操作测试 测试用例1 测试用例2 测试用例3 测试用例1 测试用例2 测试用例3数据备份测试20设计测试用例的策
16、略选择测试用例的设计方法不是单独存在的,具体到每个测试项目里都会用到多种方法,每种类型的软件有各自的特点,每种测试用例设计的方法也有各自的特点,针对不同软件如何利用这些黑盒方法是非常重要的。在实际测试中,往往是综合使用各种方法才能有效提高测试效率和测试覆盖度,这就需要认真掌握这些方法的原理,积累更多的测试经验,以有效提高测试水平。首先进行等价类划分,包括输入条件和输出条件的等价划分,将无限测试变成有限测试,这是减少工作量和提高测试效率的最有效方法。在任何情况下都必须使用边界值分析方法。经验表明用这种方法设计出测试用例发现程序错误的能力最强。对照程序逻辑,检查已设计出的测试用例的逻辑覆盖程度。如
17、果没有达到要求的覆盖标准,应当再补充足够的测试用例。对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法。21测试用例设计工具设计依据:设计依据:软件需求文档软件设计文档通用设计工具:通用设计工具:Microsoft WordMicrosoft ExcelMicrosoft Access设计工具专用:设计工具专用:IBM Rational TestManagerMercury Interactive TestDirector常见问题:常见问题:软件文档不全或没有文档没有完成编码就开始设计测试用例22案例研究1:根据输入判断三角形的形状测试场景:测试场景:一个程
18、序读入3个整数,把这三个数值看作一个三角形的3条边的长度值。这个程序要打印出信息,说明这个三角形是不等边的、是等腰的、还是等边的。 确定输入数据与三角形形状的关系:确定输入数据与三角形形状的关系:设三角形的3条边分别为A,B,C。如果它们能够构成三角形的3条边,必须满足:A0,B0,C0,且A+BC,B+CA,A+CB;如果是等腰的,还要判断A=B,或B=C,或A=C;如果是等边的,则需判断是否A=B,且B=C,且A=C。23案例研究1:判断三角形的形状(续1)创建等价类表:创建等价类表:输入条件有效等价类无效等价类是否三角形的三条边(A0), (1)(B0), (2)(C0), (3)(A+
19、BC), (4)(B+CA), (5)(A+CB), (6)(A0), (7)(B0), (8)(C0), (9)(A+BC), (10)(B+CA), (11)(A+CB), (12)是否等腰三角形(A=B), (13)(B=C), (14)(C=A), (15)(AB)and(BC)and(CA) (16)是否等边三角形(A=B)and(B=C)and(C=A) (17)(AB), (18)(BC), (19)(CA), (20)24案例研究1:判断三角形的形状(续2)确定等价类输入数据:确定等价类输入数据:序号序号【A A,B B,C C】覆盖等价类覆盖等价类输出输出1【3,4,5】(1
20、),(2),(3),(4),(5),(6)一般三角形2【0,1,2】(7)不能构成三角形3【1,0,2】(8)4【1,2,0】(9)5【1,2,3】(10)6【1,3,2】(11)7【3,1,2】(12)8【3,3,4】(1),(2),(3),(4),(5),(6),(13)等腰三角形9【3,4,4】(1),(2),(3),(4),(5),(6),(14)10【3,4,3】(1),(2),(3),(4),(5),(6),(15)11【3,4,5】(1),(2),(3),(4),(5),(6),(16)非等腰三角形12【3,3,3】(1),(2),(3),(4),(5),(6),(17)是等边三
21、角形13【3,4,4】(1),(2),(3),(4),(5),(6),(14),(18)非等边三角形14【3,4,3】(1),(2),(3),(4),(5),(6),(15),(19)15【3,3,4】(1),(2),(3),(4),(5),(6),(13),(20)25案例研究2:测试用户登录对话框的功能测试场景:测试场景:在各种输入条件下,测试程序的登录对话框功能。用户名和密码的规则如下:用户名和密码的规则如下: 用户名长度为6至10位(含6位和10位) 用户名由字符(a-z、A-Z)和数字(0-9)组成 不能为空、空格和特殊字符 密码规则同用户名规则 26案例研究2:登录对话框的功能(续
22、1)确定输入数据的情形:确定输入数据的情形:操作步骤操作步骤预期结果预期结果输入正确的用户名和口令(均为6位),点击OK按钮进入系统输入正确的用户名和口令(均为10位) ,点击OK按钮进入系统输入正确的用户名和口令(均为6至8位之间),进入系统用户名为空,提示输入用户名不能进入系统用户名为空格,提示无效用户名不能进入系统用户名小于6位,提示用户名太短不能进入系统27案例研究2:登录对话框的功能(续2)确定具体的输入数据:确定具体的输入数据:“用户名用户名”“口令口令”“预期结果预期结果”说明说明“user10”“pass10”进入系统正确的用户名和口令(6位)“user789”“pass789
23、”进入系统正确的用户名和口令(7-9位)“user000010”“pass000010”进入系统正确的用户名和口令(10位)“”“pass”提示输入用户名不能进入系统用户名为空“空格”“pass”提示无效用户名不能进入系统用户名为空格“user”“userpass”提示用户名太短不能进入系统用户名小于6位“user0000011”“userpass”提示用户名太长不能进入系统用户名大于10位28案例研究3:压力/负载测试用例设计设计目的设计目的: 验证程序在承受某种负载或压力下是否能够正常运行 找出程序安全运行的临界值适用情形适用情形: 服务器/客户机局域网 服务器/浏览器互联网设计方法设计方
24、法:设计出不同等级的压力条件压力压力/负载分类与代号负载分类与代号: CPU速度CSCPU使用量CU磁盘空间DS物理内存PM虚拟内存使用量VM登录用户的数量UN传输带宽BW传输数据的大小DN29案例研究3:压力/负载测试用例设计(续1)编号编号CSCUDSPMVMUNBWDN应该产生的行应该产生的行为为结果结果说明说明01PIII 80010%50MB64MB50%301M5M正常02PIV180080%100MB128MB30%1000.5M10M无法响应03PII 50025%600MB256MB15%102.5M20M正常04PIV280035%400MB512MB80%5000.5M5
25、0M无法响应05PIV320050%200MB1024MB65%20001.5M100M无法响应30案例研究4:测试软件对话框的界面设计Deployment Testcase Test Case ID:62Title:UserExitFormPath:DeploymentGeneralAuthor: xxxxxPurpose : make sure the dialog to test is properly designed, look for truncations, wrong tab orders, duplicated hotkeys, overlappings and any ot
26、her posible issues Steps: Pre-steps:1. Launch App.2. Go to “Tools” / “Import/Export Settings”3. Select “General development settings”4. Click Reset Settings5. If you are prompted to save your settings, click “Dont save”6. A dialog appears telling you that the operation had been successful 31案例研究5:测试
27、中断安装软件的功能Purpose:Verify the app can be canceled during installationTest Steps:1. Launch App Name2. From the drop down menu select File, New and Project3. The New project Dialog box should appear4. In “Project Types”, select “Other Project Types” and under this, “Setup and deployment”. From the “Temp
28、lates” select a setup project, give the project a name for example Deploy1 and press “OK”5. From the “Build” menu click “Build Solution” and wait until the project has been built6. Close the project and navigate to the folder where you saved your project7. Double click the Setup folder and then doub
29、le click the Debug folder8. Click the Setup.exe to launch the Windows Installer9. At the first stage of the wizard click the “Cancel” button and click “Yes” when asked are you sure you want to exit10. The Installation Interrupted dialog appears32案例研究6:测试软件中文大字符集的支持Create and structure a site with GB
30、 18030 characterApp name is a very complex product, and its ability of site management as well as multimedia authoring is quite powerful. The following testcases is used to test the performance in supporting GB 18030 when creating a site. Title: Create a Blank Site with GB 18030 CharacterSteps:1.Lau
31、nch App name.2.Choose File New Site to open the site wizard.3.Select Single User and click Next.4.Select Blank Site to create a project folder and Click Next.5.In Site Name field on the dialog, type in or copy/paste GB 18030 characters as site name. Click Next.6.Choose location where you want to store all folders of this new site.Verify this new site is created, with correct project folder name as desired.In File panel, verify this site name with GB18030 character can display properly as desired.33