软件测试基础测试方法幻灯片.ppt

上传人:石*** 文档编号:87416983 上传时间:2023-04-16 格式:PPT 页数:79 大小:6.50MB
返回 下载 相关 举报
软件测试基础测试方法幻灯片.ppt_第1页
第1页 / 共79页
软件测试基础测试方法幻灯片.ppt_第2页
第2页 / 共79页
点击查看更多>>
资源描述

《软件测试基础测试方法幻灯片.ppt》由会员分享,可在线阅读,更多相关《软件测试基础测试方法幻灯片.ppt(79页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、软件测试基础测试方法1第1页,共79页,编辑于2022年,星期三第三章第三章 软件测试基本技术软件测试基本技术1 1 软件测试技术概述软件测试技术概述2 2 白盒测试技术白盒测试技术3 3 黑盒测试技术黑盒测试技术2第2页,共79页,编辑于2022年,星期三软件测试技术概述软件测试技术概述根据G.J.Myers观点-软件测试的目的软件测试的目的:n 软件测试是为了发现错误而执行程序的过程n 一个好的测试能够在第一时间发现程序中存在的错误n 一个好的测试是发现了至今尚未发现的错误的测试。软件测试是质量控制的重要手段,保证客户拿软件测试是质量控制的重要手段,保证客户拿软件测试是质量控制的重要手段,

2、保证客户拿软件测试是质量控制的重要手段,保证客户拿到或用户使用高质量的软件产品到或用户使用高质量的软件产品到或用户使用高质量的软件产品到或用户使用高质量的软件产品3第3页,共79页,编辑于2022年,星期三1)软件测试方法分类软件测试方法分类n根据测试对象在测试过程中是否发生状态变化:动态测试和静态测试n根据对测试对象了解的程度(按哲学观点):黑盒测试和白盒测试4第4页,共79页,编辑于2022年,星期三测试方法测试方法 黑盒子和白盒子黑盒子和白盒子 静态的和动态的静态的和动态的 文档、代码审查文档、代码审查 数据输入边界条件法数据输入边界条件法 等价划分、数据流程图等价划分、数据流程图 状态

3、变换图状态变换图 逻辑路径法逻辑路径法5第5页,共79页,编辑于2022年,星期三黑盒子和白盒子黑盒子和白盒子功能测试功能测试数据驱动测试数据驱动测试 结构测试结构测试逻辑驱动测试逻辑驱动测试 客户需求事件驱动输入输出6第6页,共79页,编辑于2022年,星期三2)黑盒测试法(黑盒测试法(black-box testing)概念:也称功能测试或数据驱动测试。不关心程序内部结构,用于验证产品所应具有的功能是否实现,每个功能是否都能正常使用,是否满足用户的要求。测试范围:针对程序接口和用户界面进行测试,只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出

4、信息,并且保持外部信息的完整性。用途:主要用于软件确认测试。方法:等价类划分、边界值分析、错误推测法、因果图。7第7页,共79页,编辑于2022年,星期三l是否有不正确或遗漏了的功能;l在接口上,能否正确地接受输入数据,能否产生正确的输出信息;l访问外部信息是否满足要求;l性能上是否满足要求;l界面是否错误,是否不美观;l初始化和终止错误。发现问题类型8第8页,共79页,编辑于2022年,星期三3)白盒测试法(白盒测试法(white-box testing)概念:也称结构测试或逻辑驱动测试。已知产品内部工作流程,清楚软件程序的结构和语句,按照程序内部的结构测试程序。要求对程序的结构特性做到一定

5、程度的覆盖,对所有逻辑路径进行测试,并检验内部控制结构和数据结构是否有错。测试范围:测试程序内部的变量状态、逻辑结构、运行路径等,检验程序中的每条通路是否能按预定要求正确工作,检查程序内部动作或运行是否符合设计规格要求,所有内部成分是否按规定正常进行。用途:主要用于软件验证测试。方法:逻辑覆盖、循环覆盖和基本路径测试。9第9页,共79页,编辑于2022年,星期三白盒测试原则和说明原则:n保证每个模块中所有独立路径至少被使用一次;n对所有逻辑值均测试为真值和假值;n在上下边界及可操作范围内运行所有循环;n检查内部数据结构以确保其有效性。说明:n穷举路径测试绝不能查出程序违反了设计规范,即程序在实

6、现一个不是用户需要的功能;n穷举路径测试不可能查出程序中因遗漏路径而出错;n穷举路径测试可能发现不了一些与数据相关的错误。10第10页,共79页,编辑于2022年,星期三4)静态的和动态的测试)静态的和动态的测试主持人主持人作者记录员列席人员内审员内审员技术专业人员用户代表不正式正式互审 走读 审查会议运行程序运行程序11第11页,共79页,编辑于2022年,星期三静态测试静态测试概念:静态测试就是静态分析,对模块的源代码进行研读,查找错误或收集一些度量数据,不需要对代码进行编译和仿真运行。测试范围:软件产品的设计规格说明书的审查,程序代码的阅读、审查等。方法:人工检测和计算机辅助静态分析手段

7、进行检测。只进行特性分析。n人工检测:人工审查或评审软件。偏重于编码风格、质量的检验。可有效发现逻辑设计和编码错误。n计算机辅助静态分析:利用静态分析工具对被测程序进行特性分析,从程序中提取一些信息,以便检查程序逻辑的各种缺陷和可疑的程序构造。12第12页,共79页,编辑于2022年,星期三动态测试动态测试概念:动态测试是通过观察代码运行时的动作来提供执行跟踪、时间分析,以及测试覆盖度方面的信息。它通过实际运行程序发现错误。测试范围:通过有效的测试用例,对应的输入/输出关系来分析被测程序的运行情况。13第13页,共79页,编辑于2022年,星期三5)自动测试和随机测试)自动测试和随机测试手工模

8、拟用户操手工模拟用户操作作自动测试:通过工具自动执行软件的测试。自动测试:通过工具自动执行软件的测试。随机测试:完全模拟客户进行随意随机测试:完全模拟客户进行随意的操作。的操作。14第14页,共79页,编辑于2022年,星期三6)验证和确认()验证和确认(V&V)Verification:Are we building the product right?是否正确地构造了软件?即是否正确地做事,验证开发过程是否遵守已定义好的内容。验证产品满足规格设计说明书的一致性Validation:Are we building the right product?是否构造了正是用户所需要的软件?即是否正在

9、做正确的事。验证产品所实现的功能是否满足用户的需求15第15页,共79页,编辑于2022年,星期三2 2 白盒测试技术白盒测试技术概念:概念:白盒测试也称为结构测试或逻辑驱动测试,把程序看作一个透明的盒子,测试程序的代码书写结构和逻辑问题。测试对象:测试对象:源程序。检查内容:检查内容:l对程序模块的所有独立的执行路径至少要测试一次l对所有逻辑判断,取真或假的两种情况至少要测试一次l对程序进行边界检查l检验内部数据结构的有效性。16第16页,共79页,编辑于2022年,星期三白盒测试用例的设计方法白盒测试用例的设计方法逻辑覆盖:以程序的内部逻辑结构为基础,分为语句覆盖、判定覆盖、判定-条件覆盖

10、、条件组合覆盖等基本路径测试:在程序控制流程的基础上,分析控制构造的环路复杂性,导出基本可执行路径集合,从而设计测试用例。白盒测试分类:白盒测试分类:静态测试和动态测试。17第17页,共79页,编辑于2022年,星期三白盒测试用例注意事项白盒测试用例注意事项l由于测试路径可能非常多,以及时间和资源问题,选出足够多的路径测试l由于深入到程序编码,通常开发人员协助测试人员书写白盒测试用例18第18页,共79页,编辑于2022年,星期三1)静态测试静态测试技术:静态测试技术:不运行被测试程序,对代码通过检查、阅读进行分析。三步曲:三步曲:走查(Walk Through)审查(Inspection)评

11、审(Review)最常见的静态测试是找出源代码的语法错误。19第19页,共79页,编辑于2022年,星期三编码的标准和规范编码的标准和规范标准:建立起来必须遵守的规则。规范:建议最佳做法,推荐更好方式。实施标准和规范的原因:n 可靠性。n 可读性和可维护性。n 可移植性。20第20页,共79页,编辑于2022年,星期三(一)代码检查法 代码检查法主要是通过桌面检查、代码审查和走查方式,对以下内容进行检查:l检查代码和设计的一致性l代码的可读性以及对软件设计标准的遵循情况l代码逻辑表达的正确性l代码结构的合理性l程序中不安全、不明确和模糊的部分l编程风格方面的问题等21第21页,共79页,编辑于

12、2022年,星期三(1)(1)走查走查 (Walk ThroughWalk Through)定义:采用讲解、讨论和模拟运行的方式进行的查找错误的活动。注意:n 引导小组成员在走查前通读设计和编码。n 限时,避免跑题。n 发现问题适当记录,避免现场修改。n 检查要点是代码是否符合标准和规范,是否有逻辑错误。22第22页,共79页,编辑于2022年,星期三(2)(2)审查审查 (InspectionInspection)定义:采用讲解、提问方式进行,一般有正式的计划、流程和结果。主要方法采用缺陷检查表。注意:n 以会议形式,制定会议目标、流程和规则,结束后要编写报告。n 按缺陷检查表逐项检查。n

13、发现问题适当记录,避免现场修改。n 发现重大缺陷,改正后会议需要重开。n 检查要点是缺陷检查表,所以该表要根据项目不同不断积累完善。23第23页,共79页,编辑于2022年,星期三走查与审查的比较走查与审查的比较走 查审 查准备通读设计和编码应准备好需求描述文档、程序设计文档、程序的源代码清单、代码编码标准和代码缺陷检查表形式非正式会议正式会议参加人员开发人员为主项目组成员包括测试人员主要技术方法 无缺陷检查表注意事项限时、不要现场修改代码 限时、不要现场修改代码生成文档会议记录静态分析错误报告目标代码标准规范,无逻辑错误代码标准规范,无逻辑错误24第24页,共79页,编辑于2022年,星期三

14、(3)(3)评审评审 (ReviewReview)定义:通常在审查会后进行,审查小组根据记录和报告进行评估。注意:n 充分审查了所规定的代码,并且全部编码准则被遵守。n 审查中发现的错误已全部修改。25第25页,共79页,编辑于2022年,星期三(二)静态结构分析法 在静态结构分析中,测试人员通常通过使用测试工具分析程序源代码的系统结构、数据结构、数据接口、内部控制逻辑等内部结构,生成函数调用关系图、模块控制流图、内部文件调用关系图等各种图形、图表,清晰地标识整个软件的组成结构。采用方法:l通过生成各种图表,来帮助对源程序的静态分析l静态错误分析l表达式分析l接口分析26第26页,共79页,编

15、辑于2022年,星期三2)程序插桩概念:程序插桩是借助向被测程序中插入一些操作,来实现测试目的的方法,即向源程序中添加一些语句,实现对程序语句的执行、变量的变化等情况进行检查。设计插桩程序时需要考虑的问题:n探测哪些信息?n在程序的什么部位设置探测点?n需要设置多少个探测点?n如何在程序中特定部位插入某些用以判断变量特性的语句?27第27页,共79页,编辑于2022年,星期三3)逻辑覆盖()语句覆盖(点覆盖)至少每个语句应该执行一次。()判定覆盖分支覆盖(边覆盖)每个语句必须至少执行一次,而且每个判定的可能的结果都应该至少执行一次。()条件覆盖不仅每个语句至少执行一次,而且使判定表达式中的每个

16、条件都取到各种可能的结果。注:满足条件覆盖,不一定满足判定覆盖。28第28页,共79页,编辑于2022年,星期三()判定条件覆盖选取足够多的测试数据,使得判定表达式中的每个条件中都取到各种可能的值,而且每个判定表达式也都取到各种可能的结果。()条件组合覆盖选取足够多的测试数据,使得每个判定表达式中条件的各种可能组合都至少出现一次。()路径覆盖选取足够多的测试数据,使程序的每条可能路径都至少执行一次。29第29页,共79页,编辑于2022年,星期三4)测试覆盖准则错误敏感测试用例分析(ESTCA)准则 例子:if(l0)then i=j错写成:if(l0)then i=j Foster通过大量的

17、实验确定了程序中谓词最容易出错的部分,得到了一套错误敏感测试用例分析ESTCA(Error Sensitive Test Cases Analysis)规则:30第30页,共79页,编辑于2022年,星期三规则:规则:对于A rel B(其中rel可以是,和)型的分支谓词,应适当地选择A与B的值,使得测试执行到该分支语句时,AB的情况分别出现一次。规则规则2 2:对于A rel c(其中rel可以是,或,A是变量,c是常量)型的分支谓词,当rel是时,应适当地选择A的值,使得:A=c-M 其中,M是距c最小的机器容许的整数,若A和c均为整形时,M。同样当rel是时,应适当地选择A的值,使得:A

18、=cM 其中,M是距c最小的机器容许的整数,若A和c均为整形时,M。规则:规则:对外部输入变量赋值,使其在每一测试用例中具有不同的值与符号,并与同一组测试用例中其他变量的值与符号不一致。31第31页,共79页,编辑于2022年,星期三5)基本路径测试法概念:在程序控制流图的基础上,通过分析控制构造的环路复杂性导出基本可执行路径集合,从而设计测试用例的方法。设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。包括个方面:l程序流程图l计算程序环境复杂性l导出测试用例l准备测试用例l图形矩阵32第32页,共79页,编辑于2022年,星期三6)其它白盒测试法(1)域测试 是一种基于程序结

19、构的测试方法。Howden对程序错误分类:域错误、计算错误和丢失错误。域错误:每条执行路径对应于输入域的一类情况,若程序的控制流有错误,对应某一特定输入可能执行的是一条错误路径,这种错误称为路径错误,也叫域错误。计算错误:如果对于特定输入执行的是正确路径,但由于赋值语句的错误致使输出结果不正确,则称为计算型错误。丢失错误:程序中某处少了一个判定谓词而引起的丢失路径错误。33第33页,共79页,编辑于2022年,星期三(2)符号测试 符号测试的基本思想:允许程序不仅仅输入具体的数值数据,也可以输入符号值。所谓的符号值可以是基本符号变量值,也可以是这些符号变量值的一个表达式。(3)Z路径覆盖 概念

20、:简化循环意义下的路径覆盖为Z路径覆盖。所谓的循环简化是指限制循环的次数。无论循环的形式和实际执行循环的次数是多少,只考虑循环一次和零次两种情况。(4)程序变异 程序变异是一种错误驱动测试。34第34页,共79页,编辑于2022年,星期三7)循环测试 循环测试是一种白盒测试技术,注重于循环构造的有效性。l循环结构测试用例的设计 循环可以划分为以下几种模式:35第35页,共79页,编辑于2022年,星期三简单循环的测试用例设计:简单循环的测试用例设计:下列测试集用于简单循环,其中 n是允许通过循环的最大次数。l 整个跳过循环;l 只有一次通过循环;l 两次通过循环;l m次通过循环,其中 m10

21、i=1YNi=i+2测试内容测试用例备注整个跳过循环只有一次通过循环两次通过循环m次通过循环,其中 m0,B0,C0,且A+BC,B+CA,A+CB;如果是等腰的,还要判断A=B,或B=C,或A=C;如果是等边的,则需判断是否A=B,且B=C,且A=C。49第49页,共79页,编辑于2022年,星期三案例研究案例研究1:判断三角形的形状(续:判断三角形的形状(续1)创建等价类表:创建等价类表:输入条件有效等价类无效等价类是否三角形的三条边(A0),(1)(B0),(2)(C0),(3)(A+BC),(4)(B+CA),(5)(A+CB),(6)(A0),(7)(B0),(8)(C0),(9)(

22、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)50第50页,共79页,编辑于2022年,星期三案例研究案例研究1:判断三角形的形状(续:判断三角形的形状(续2)确定等价类输入数据:确定等价类输入数据:序号序号【A A,B B,C C】覆盖等价类覆盖等价类输出输出1【3,4,5】(1),(2),(3),(4),(5),(6)一般三角形2【0,1,

23、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)是等边三角形13【3,4,4】(1),(2),(3),(4),(5),(

24、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)51第51页,共79页,编辑于2022年,星期三案例研究案例研究2:测试用户登录对话框的功能:测试用户登录对话框的功能测试场景:测试场景:在各种输入条件下,测试程序的登录对话框功能。用户名和密码的规则如下:用户名和密码的规则如下:用户名长度为6至10位(含6位和10位)用户名由字符(a-z、A-Z)和数字(0-9)组成 不能为空、空格和特殊字符 密码规则同用户名规则 52第52页,共79页,编

25、辑于2022年,星期三案例研究案例研究2:登录对话框的功能(续:登录对话框的功能(续1)确定输入数据的情形:确定输入数据的情形:操作步骤操作步骤预期结果预期结果输入正确的用户名和口令(均为6位),点击OK按钮进入系统输入正确的用户名和口令(均为10位),点击OK按钮进入系统输入正确的用户名和口令(均为6至8位之间),进入系统用户名为空,提示输入用户名不能进入系统用户名为空格,提示无效用户名不能进入系统用户名小于6位,提示用户名太短不能进入系统53第53页,共79页,编辑于2022年,星期三案例研究案例研究2:登录对话框的功能(续:登录对话框的功能(续2)确定具体的输入数据:确定具体的输入数据:

26、“用户名用户名”“口令口令”“预期结果预期结果”说明说明“user10”“pass10”进入系统正确的用户名和口令(6位)“user789”“pass789”进入系统正确的用户名和口令(7-9位)“user000010”“pass000010”进入系统正确的用户名和口令(10位)“”“pass”提示输入用户名不能进入系统用户名为空“空格”“pass”提示无效用户名不能进入系统用户名为空格“user”“userpass”提示用户名太短不能进入系统用户名小于6位“user0000011”“userpass”提示用户名太长不能进入系统用户名大于10位54第54页,共79页,编辑于2022年,星期三等

27、价类划分法等价类划分法划分好等价类测试:防止遗漏测试案例。划分好等价类测试:防止遗漏测试案例。55第55页,共79页,编辑于2022年,星期三例子例子 有一系统,要求用户输入日期,假设日期限制在2000年1月至2020年12月,如果用户输入的日期不在这个范围内,则显示出错信息,并且系统规定日期由年月的6位数字组成,前4位代表年,后2位代表月,请用等价类划分法进行分类与测试,并分别给出相应的测试用例。输入合理等价类不合理等价类日期1、6位数字字符2、有非数字字符3、少于6个数字字符4、多于6个数字字符年份范围5、在2000-2020之间6、小于20007、大于2020月份范围8、在1-12之间9

28、、等于010、大于1256第56页,共79页,编辑于2022年,星期三测试用例序号用例1、5、8234679102007052007A20072007052019990520210520070020071357第57页,共79页,编辑于2022年,星期三2)边界值分析方法)边界值分析方法概念:程序的很多错误发生在输入或输出范围的边界上,因此针对各种边界情况设置测试用例,可以发现不少程序缺陷。因此边界值分析法是对输入的边界值进行测试。与等价类划分方法的区别:边界值分析不是从某个等价类中随便挑选一个作为代表,而是使这个等价类的每个边界都要作为测试条件。设计方法:l确定边界情况(输入或输出等价类的边

29、界)l选取正好等于、刚刚大于或刚刚小于边界值作为测试数据58第58页,共79页,编辑于2022年,星期三确定边界值的方式(原则)l如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。l如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少一、比最大个数多一的数作为测试数据。l如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例。l如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例。l分析规格说明,找出其他可能的边界条件。59第59页,共79页,编辑于

30、2022年,星期三边界值分析法边界值分析法例如:测试一个排序程序的边界值分析法的例子,其边界条件有:排序序列为空;p排序序列仅有一个数据;p排序序列为满,用猜错法补充一下测试用例;p排序序列已经按要求排好序;p排序序列的顺序与要求的顺序恰好相反;p排序序列中的所有数据全部相等。因为错误最容易发生在边界值附近,所以边界值分析法对于多变量函数的测试很有效,尤其是对于像C/C+数据类型要求不是很严格的语言有利。60第60页,共79页,编辑于2022年,星期三输入范围测试用例年份范围在2000-2020之间199905、200005、200105201905、202005、202105月份范围在1-1

31、2之间200700、200701、200702200711、200712、200713整体200001-202012199912、200001、200002202011、202012、202101 有一系统,要求用户输入日期,假设日期限制在2000年1月至2020年12月,如果用户输入的日期不在这个范围内,则显示出错信息,并且系统规定日期由年月的6位数字组成,前4位代表年,后2位代表月,请用边界值法进行分类与测试,并分别给出相应的测试用例。61第61页,共79页,编辑于2022年,星期三3)错误推测法)错误推测法概念:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性地设计测试用例。

32、基本思想:列举程序中所有可能出现的错误和容易发现错误的地方,根据他们来选择和设计测试用例。62第62页,共79页,编辑于2022年,星期三发现程序经常出现的错误的方法:l单元测试中发现的模块错误;l产品的以前版本曾经发现的错误;l输入数据为0或字符为空;l当软件要求输入时(比如在文本框中),不是没有输入正确的信息,而是根本没有输入任何内容,单单按了Enter键;这种情况在产品说明书中常常忽视,程序员也可能经常遗忘,但是在实际使用中却时有发生。程序员总会习惯性的认为用户要么输入信息,不管是看起来合法的或非法的信息,要不就会选择Cancel键放弃输入。63第63页,共79页,编辑于2022年,星期

33、三错误推测法错误推测法这个错误到底在哪?这个错误到底在哪?错误推测法是测试者根据经验、知识和直觉来发现软件错误。64第64页,共79页,编辑于2022年,星期三4)因果图法测试用例设计)因果图法测试用例设计概念:多种输入条件的组合,产生多种结果设计测试用例。设计方法:l分析软件规格说明文档描述的哪些是原因(输入条件),哪些是结果(输出条件),给每个原因和结果赋予一个标示符l找出原因与结果,原因与原因之间的对应关系,划出因果图l在因果图上标上哪些不可能发生的因果关系,表明约束或限制条件l根据因果图,创建判定表,将复杂的逻辑关系和多种条件组合很具体明确的表示出来l把判定表的每一行作为依据设计测试用

34、例。65第65页,共79页,编辑于2022年,星期三因果图法因果图法例:某个软件规格说明中包含以下要求:第一列字符必须是或,第二个字符必须是一个数字,在此情况下进行文件的修改;但如果第一列字符不正确,则输出信息;如果第二列字符不是数字,则给出信息。66第66页,共79页,编辑于2022年,星期三因果图法因果图法混凝土强度为什么不足?混凝土强度为什么不足?67第67页,共79页,编辑于2022年,星期三测试场景法测试场景法(1)基本流和备选流基本流:采用直黑线表示,是经过用例的最简单的路径(无任何差错,程序从开始直接执行到结束)。备选流:采用不同颜色表示,一个备选流可能从基本流开始,在某个特定条

35、件下执行,然后重新加入基本流中,也可以起源于另一个备选流,或终止用例,不再加入到基本流中。69第69页,共79页,编辑于2022年,星期三例子场景1:基本流场景2:基本流、备选流1;场景3:基本流、备选流1和备选流2;场景4:基本流、备选流3;场景5:基本流、备选流3、备选流1;场景6:基本流、备选流3、备选流1、备选流2;场景7:基本流、备选流4;场景8:基本流、备选流3、备选流4;70第70页,共79页,编辑于2022年,星期三(2)测试场景法设计步骤)测试场景法设计步骤l根据说明,描述出程序的基本流及各项备选流;l根据基本流和各备选流生成不同的场景;l对每一个场景生成相应的测试用例;l对

36、生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值。71第71页,共79页,编辑于2022年,星期三6)判定表驱动)判定表驱动(1)判定表驱动法概述判定表通常由4部分组成:条件桩条件项动作桩动作项规则72第72页,共79页,编辑于2022年,星期三(2)判定表的建立步骤n确定规则个数n列出所有的条件项和动作项n填入条件取值n填入集体动作,得到初始判定表n简化,合并相似规则73第73页,共79页,编辑于2022年,星期三例子例子:一个软件的规格说明指出:1)当条件1和条件2满足,并且条件3和条件4不满足,或者当条件1、条件3和条件4满足时,要执行操作1

37、;2)在任何一个条件都不满足时,要执行操作2;3)在条件1不满足,而条件4被满足时,要执行操作3。74第74页,共79页,编辑于2022年,星期三规则1规则2规则3规则4规则5规则6规则7规则8规则9条件1YYNN-NYY条件2Y-N-YYN条件3NYN-YNNN条件4NYNYNNY-操作1xx操作2x操作3x75第75页,共79页,编辑于2022年,星期三组合分析法组合分析法 组合分析是一种基于每对参数组合的测试技术,主要考虑参数之间的影响是主要的错误来源和大多数的错误起源于简单的参数组合。在产品汉化过程中在产品汉化过程中哪个组合出错了?哪个组合出错了?76第76页,共79页,编辑于2022

38、年,星期三7)黑盒测试策略)黑盒测试策略l首先进行等价类划分。l在任何情况下都必须使用边界值分析方法。l可以用错误推测法追加一些测试用例。l如果程序的功能说明中含有输入条件的组合情况,则一开始就可以选用因果图法和判定表驱动法。l对于参数配置类的软件,要用正交试验法选择较少的组合方式达到最佳效果。l对于业务流清晰的系统,可以利用场景法贯穿整个测试案例过程,在案例中综合使用各种测试方法。77第77页,共79页,编辑于2022年,星期三作业作业 一个程序读入1个整数,把这个数值看作一个学生的成绩。这个程序要打印出信息,说明这个学生的成绩是优秀(90-100)、是良好(80-89)、是中等(70-79)、是及格(60-69)、还是不及格(0-59)。请用黑盒测试法给出相应的测试用例。78第78页,共79页,编辑于2022年,星期三Q&A79第79页,共79页,编辑于2022年,星期三

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁