《第6章软件测试优秀课件.ppt》由会员分享,可在线阅读,更多相关《第6章软件测试优秀课件.ppt(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第6章软件测试章软件测试第1页,本讲稿共28页内容介绍内容介绍n6.1 软件测试概述软件测试概述 n6.2 软件测试方法软件测试方法 n6.3 黑盒测试用例设计黑盒测试用例设计 n6.4 白盒测试用例设计白盒测试用例设计 n6.5 软件测试步骤软件测试步骤 n6.6 案例分析案例分析 n6.7 小结小结 第2页,本讲稿共28页6.1 软件测试概述软件测试概述n软件测试是为了发现程序中的错误而执行程序的过程。n具体说,它是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出的一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。第3页,本讲稿共28页6.1.1 软件测试的定义和目标
2、n软件测试就是在软件投入运行之前,尽可能多地发现软件中的错误。软件测试是对软件规格说明、设计和编码的最后复审,是软件质量保证的关键步骤。n软件测试的目标包括以下三点:测试是为了发现程序中的错误而执行程序的过程。好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。成功的测试是发现了至今为止尚未发现的错误的测试。第4页,本讲稿共28页6.1.2 软件测试的原则n坚持在软件开发的各个阶段进行技术评审,这样才能在开发过程中尽早地发现和预防错误,杜绝某些隐患,提高软件质量。n测试用例应由输入数据和与之对应的预期输出结果这两部分组成。n程序员应避免检查自己的程序。如果由别人来测试程序员编写的程序,可
3、能会更客观,更有效,并更容易取得成功。n在设计测试用例时,应当包括合理的输入条件和不合理的输入条件。n充分注意测试中的群集现象。n严格执行测试计划,排除测试的随意性。应当对每一个测试结果做全面检查。n妥善保存测试计划,测试用例,出错统计和最终分析报告,为维护提供方便。第5页,本讲稿共28页6.2 软件测试方法n根据程序是否运行静态分析动态测试n按照测试数据的设计依据黑盒测试白盒测试 第6页,本讲稿共28页1.静态分析与动态测试1静态分析 所谓静态分析,就是不需要执行所测试的程序,而只是通过扫描程序正文,对程序的数据流和控制流等信息进行分析,找出系统的缺陷,得出测试报告。2动态测试 动态测试是通
4、过源程序运行时所体现出来的特征,进行执行跟踪、时间分析以及测试覆盖等方面的测试。第7页,本讲稿共28页2.黑盒测试与白盒测试1黑盒测试 黑盒测试又称为功能测试、数据驱动测试和基于规格说明的测试。是一种从用户观点出发的测试。2白盒测试 白盒测试也称作结构测试或逻辑驱动测试,它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行。第8页,本讲稿共28页6.3 黑盒测试用例设计n等价类划分法n边界值分析法n决策表法n因果图法 第9页,本讲稿共28页6.3.1 等价类划分法n等价类划分法是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取
5、少数具有代表性的数据作为测试用例。n所谓等价类是指输入域的某个子集合,所有等价类的并集就是整个输入域。n有效等价类是指对软件规格说明来说,合理、有意义的输入数据所构成的集合。n无效等价类则和有效等价类相反,利用无效等价类可以检验程序异常情况的处理。第10页,本讲稿共28页划分等价类的原则划分等价类的原则 1.如果规定了输入条件的取值范围或者个数,则可以确定一个有效等价类和两个无效等价类。2.如果规定了输入值的集合,则可以确定一个有效等价类和一个无效等价类。3.如果规定了输入数据的一组值,并且程序要对每一个输入值分别进行处理,则可为每一个值确定一个有效等价类,此外根据这组值确定一个无效等价类,即
6、所有不允许的输入值的集合。4.如果规定了输入数据必须遵守的规则,则可以确定一个有效等价类和若干个无效等价类。5.如果已知的等价类中各个元素在程序中的处理方式不同,则应将该等价类进一步划分成更小的等价类。第11页,本讲稿共28页确定测试用例步骤确定测试用例步骤1.为每一个等价类规定一个惟一的编号。2.设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这个过程,直至所有的有效等价类均被测试用例所覆盖。3.设计一个新的测试用例,使其仅覆盖一个无效等价类,重复这个过程,直至所有的无效等价类均被测试用例所覆盖。第12页,本讲稿共28页6.3.2 边界值分析法n使用边界值分析方法设计测试
7、用例,首先应确定边界情况。n通常输入和输出等价类的边界,就是应着重测试的边界情况。n应当选取正好等于、刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据。第13页,本讲稿共28页边界值分析法遵循原则边界值分析法遵循原则 1.如果输入条件规定了值的范围,则应该选取刚达到这个范围的边界值,以及刚刚超过这个范围边界的值作为测试输入数据。2.如果输入条件规定了值的个数,则用最大个数、最小个数、比最小个数少1、比最大个数多1的数作为测试数据。3.根据规格说明的每一个输出条件,分别使用以上两个原则。4.如果程序的规格说明给出的输入域或者输出域是有序集合,则应选取集合的第
8、一个元素和最后一个元素作为测试用例。5.如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界值作为测试用例。6.分析规格说明,找出其他可能的边界条件。第14页,本讲稿共28页6.3.3 决策表法n在所有的黑盒测试方法中,基于决策表(也称判定表)的测试是最为严格、最具有逻辑性的测试方法。n决策表是分析和表达多个逻辑条件下执行不同操作的情况下的工具。n决策表最突出的优点是,能够将复杂的问题按照各种可能的情况全部列举出来,简明并避免遗漏。第15页,本讲稿共28页6.3.4 因果图法n因果图法就是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种
9、情况的组合。第16页,本讲稿共28页因果图法生成测试用例步骤因果图法生成测试用例步骤1.分析软件规格说明书中的输入/输出条件,并且分析出等价类。分析规格说明中的语义的内容,通过这些语义来找出相对应的输入与输入之间,输入与输出之间的对应关系。2.将对应的输入与输入之间,输入与输出之间的关系连接起来,并且将其中不可能的组合情况标注成约束或者限制条件,形成因果图。3.将因果图转换成决策表。4.将决策表的每一列作为依据,设计测试用例。第17页,本讲稿共28页6.4 白盒测试用例设计n白盒测试是基于产品的内部结构来进行测试,检查内部操作是否按规定进行。因此,白盒测试要求对某些程序的结构特性做到一定程度的
10、覆盖,或者说这种测试是“基于覆盖率的测试”。n这里主要介绍逻辑覆盖法。第18页,本讲稿共28页6.4.1 覆盖测试n逻辑覆盖法是利用程序的逻辑结构设计相应的测试用例。语句覆盖:测试用例能使被测程序的每条执行语句至少执行一次。判定覆盖:测试用例能使被测程序中的每个判定至少取得一次“真”和一次“假”,又称分支覆盖。条件覆盖:测试用例能使被测程序中每个判定的每个条件至少取得一次“真”和一次“假”。如果判定中只有一个条件,则条件覆盖便满足判定覆盖。判定/条件覆盖:测试用例既能满足判定覆盖,又满足条件覆盖。条件组合覆盖:测试用例使每个判定中所有可能的条件取值组合至少执行一次。第19页,本讲稿共28页逻辑
11、覆盖法设计测试用例步骤逻辑覆盖法设计测试用例步骤1.选择覆盖程度类型。2.选择测试路径以满足选定的覆盖程度。3.选择测试输入数据以满足选定的测试路径和覆盖程度。4.根据测试输入数据和测试路径计算预期结果。第20页,本讲稿共28页6.5 软件测试步骤 第21页,本讲稿共28页1.单元测试n单元测试主要是软件设计的最小单位模块的验证。单元测试的主要目标是确保各单元模块被正确地编码。第22页,本讲稿共28页2.集成测试n集成测试是根据实际情况对程序模块采用适当的集成测试策略组装起来,对系统的接口以及集成后的功能进行正确校验的测试工作。n集成测试也称为综合测试。第23页,本讲稿共28页3.确认测试确认
12、测试 n确认测试是检验所开发的软件是否符合软件需求说明书规定的功能。第24页,本讲稿共28页4.系统测试系统测试 n系统测试是将已经集成好的软件系统,作为整个计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。第25页,本讲稿共28页6.6 案案 例例 分分 析析n“用户注册”功能要求用户必须输入用户名、密码及确认密码,对每一项输入条件的要求如下:用户名要求为4位以上,16位以下,使用英文字母、数字、“-”、“_”,并且首字符必须为字母或数字;密码要求为616位之间,只能使用英文字母、数字以及
13、“-”、“_”,并且区分大小写。第26页,本讲稿共28页6.7 小小 结结n目前,软件测试是保证软件可靠性的主要手段。测试阶段的根本任务是发现并改正软件中的错误。n黑盒测试和白盒测试是软件测试的两类不同方法,在测试过程中应该联合使用这两类方法。通常,在测试过程的早期阶段使用白盒测试技术,而在测试的后期主要使用黑盒测试技术。n黑盒测试的各种方法中,应用较为广泛的测试方法有:等价类划分法、边界值分析法、决策表法和因果图法;白盒测试的各种方法中,应用较为广泛的测试方法有:覆盖测试、路径测试和循环覆盖法。n大型软件的测试应该分阶段进行,通常分为单元测试、集成测试、确认测试和系统测试等四个阶段。第27页,本讲稿共28页谢谢!谢谢!第28页,本讲稿共28页