西安工业大学《软件工程》第七章测试ppt课件.ppt
《西安工业大学《软件工程》第七章测试ppt课件.ppt》由会员分享,可在线阅读,更多相关《西安工业大学《软件工程》第七章测试ppt课件.ppt(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用第七章第七章 测测 试试无论采用何种开发模型开发出来的大型软件系统,由于客观系统的复杂性,人的主观认识的狭隘性,不可能对要开发的系统具有完美的认识。虽然在软件开发的每一阶段都进行了技术审查和管理复审,也不可能把设计中所有潜在的错误检查出来并进行纠正,而且在编码阶段也会引入新的错误,软件设计环节的错误,如果不进行纠正,在使用阶段可能造成的损失会很大。所以软件在交付使用之前必须进行严格的测试,通过测试找出软件在需求分析、设计和编码阶段隐藏的错误,并加以改正。经营者提供商
2、品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用7.1测试的基本概念和原则测试的基本概念和原则1 测试的必要性测试的必要性 在测试理论形成的早期,一些软件开发公司在测试理论形成的早期,一些软件开发公司由于忽视软件的测试,造成了巨大的经济损失。由于忽视软件的测试,造成了巨大的经济损失。所以测试对提高软件的质量具有很大的重要性。所以测试对提高软件的质量具有很大的重要性。虽然在软件生命周期的各个阶段都有严格的技术虽然在软件生命周期的各个阶段都有严格的技术审查和管理复审,但是经验表明,审查不能发现审查和管理复审,但是经验表明,审查不
3、能发现所有的差错;在编码过程中,程序员的编程水平所有的差错;在编码过程中,程序员的编程水平对软件的影响很大,但是不管经验多丰富的程序对软件的影响很大,但是不管经验多丰富的程序员在编程中都会引入一些错误。如果这些错误在员在编程中都会引入一些错误。如果这些错误在软件交付前没有被测试出来,投入使用后往往带软件交付前没有被测试出来,投入使用后往往带来严重后果。来严重后果。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用2 测试的概念测试的概念 1)软件测试 软件测试是对软件计划、软件设计和软件编码进行查错和纠错的活动,这
4、个过程包括了代码执行活动和人工活动。2)程序测试 程序测试是对编码阶段出现的语法错、语义错、运行错进行查找的编码执行过程。3)动态测试 动态测试包括白盒测试和黑盒测试。黑盒测试是根据软件的功能而设计测试用例而进行测试的过程,白盒测试是根据测试的内部结构而设计测试数据,发现程序的错误。4)静态测试 静态测试包括代码审查和静态分析。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用v3软件测试的目的软件测试的目的 G.Myers关于软件测试目的的观点是:(1)测试是为了发现程序中的错误而执行程序的过程;(2)好的测试方
5、案是极有可能发现迄今尚未发现的尽可能多的错误的测试;(3)成功的测试是发现了迄今尚未发现的错误的测试。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用4测试复杂性测试复杂性 在理论上看,不论采用哪种测试,只要对每一种可能的情况都进行测试,就可以得到完全正确的程序。我们称包含所有可能的测试称为穷尽测试。而在实际中,穷尽测试是不可能做到的。图8.1 黑盒测试复杂性例子 无论采用黑盒法还是白盒法,要做到穷尽测试,在时间上和代价上都不可能,只能选择部分测试用例尽可能多地行测试,找到尽可能多的错误,也即是进行有穷测试。经营
6、者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用5 测试的基本原则测试的基本原则(1)测试前要认定被测试的软件有错,不要认为被测试的程序是正确的;(2)要确定测试软件的预先测试结果;(3)尽量避免测试自己编写的程序;(4)测试时要考虑合理的输入和不合理的输入数据;(5)测试时应以软件需求规格说明书中的需求为标准;(6)要确定找到的新错与已找到的旧错成正比;(7)所使用的测试用例应该纪录下来,以后测试时再用,以供后来的测试和维护使用。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿
7、的金额为消费者购买商品的价款或接受服务的费用7.2测试步骤 1测试过程测试过程 经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用2 测试的步骤测试的步骤 测试时,首先进行单元测试,再进行组装测试,最后进行确认测试。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用7.3设计测试方案 1白盒法测试的基本技术白盒法测试的基本技术 v在工程实践中,白盒法的基本测试思想:分析被测试程序的逻辑结构,选择逻辑执行路径子集设计测试方案。用尽可能少的
8、测试用例子集确定被测试程序的实际执行状态与预期的状态是否一致,期望发现尽可能多的错误。v在工程实践中提出了以下几种选择逻辑路径子集的覆盖标准。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用1.语句覆盖:执行足够的测试用例,使得被测试程序中每个可执行语句至少被执行一次。2.判定覆盖:判定覆盖又称为分支覆盖,它的基本思想是:执行足够的测试用例,使得被测试程序中每个语句至少执行一次,并且每个判定分支也至少执行一次.3.条件覆盖:执行足够的测试用例,使判定条件中的每个条件至少获得一次可能取值的机会。4.判定/条件覆盖:
9、执行足够的测试用例,使得被测试程序中每个判定分支至少获得一次通过,同时各判定中每个条件至少获得一次可能取值的机会。5.条件组合覆盖:执行足够的测试用例,使得被测试程序中每个判定条件的各种组合至少获得一次为真和假的机会。6.点覆盖 7.边覆盖 8.路径覆盖:执行足够的测试用例,使得被测试程序中的每条可能路径至少执行一次 经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用2 黑盒法测试的基本技术黑盒法测试的基本技术 1)等价分类法 将程序模块的所有可能输入数据(有效与无效的)划分为若干等价类,在指定等价类中任取一组数据
10、作为一个测试用例,作为该等价类的代表,并且假定:如果该组数据可以检查出程序的错误,则该等价类中其他组数据也可以产生同样的错误,相反,如果该组数据没有查出错误,则使用该等价类中其他数据组执行程序也是正确的。经营者提供商品或者服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用)边界值分析:程序在处理边界情况时最容易发生错误,许多程序错误出现在下标、数据结构和循环等等的边界附近。3)错误推测法 在很大程度上该方法靠直觉和经验进行。它的基本思想是:列举出程序中可能有的错误和容易发生错误的特殊情况,并且根据它们选择测试方案。经营者提供商品或者
11、服务有欺诈行为的,应当按照消费者的要求增加赔偿其受到的损失,增加赔偿的金额为消费者购买商品的价款或接受服务的费用7.4单元测试单元测试1 单元测试的内容单元测试的内容 1)模块接口测试 通过测试模块接口的数据流是否可以通畅地流入出模块,如果数据不能正常地进出,则其他测试都不能进行。2)局部数据结构 测试模块内部数据是否完整,内容、形式、相关关系是否正确。3)逻辑覆盖(执行路径)问题 不可能对模块内部的所有逻辑执行路径进行测试,所以选择最有可能发现错误的执行路径进行测试是至关重要的。4)出错处理问题 一个好的模块应该能够分析出错的原因、报告出错和提供很好的处理错误,保证程序能正常的运行。因此应该
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 西安 工业大学 第七 测试 ppt 课件
限制150内