ImageVerifierCode 换一换
格式:PPT , 页数:128 ,大小:1.87MB ,
文档编号:4563884      下载积分:29 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-4563884.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(晟晟文业)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(软件工程第七章-实现课件.ppt)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

软件工程第七章-实现课件.ppt

1、SOFTWARE ENGINEERING第7章 实现实现 包括编码和测试两个阶段 编码:把软件设计的结果翻译成计算机可以“理解”的形式用某种程序设计语言书写的程序。程序的质量取决于软件设计的质量和选用的程序设计语言的特点及编码风格。软件测试对软件可靠性影响巨大。测试的目的:在软件投入生产性运行之前,尽可能多地发现软件中的错误。软件测试:单元测试和综合测试。通常占软件开发总工作量的40%SOFTWARE ENGINEERINGSOFTWARE ENGINEERING7.1 编码7.1.1 选择程序设计语言编码前的一项重要工作就是选择一种适当的程序设计语言。程序设计语言分类:汇编语言 高级语言语言

2、选择的目标:使根据设计去完成编码时困难最小;需要的程序测试量较小;得出的程序容易阅读和维护。SOFTWARE ENGINEERING7.1 编码语言选择的实用标准:系统用户的要求。-用户熟悉的语言 可以使用的编译环境 可以得到的软件工具 工程规模 -过大,可以自己设计一个专用语言 程序员的知识 软件可移植性要求 软件的应用领域适用各类应用领域的语言 年代年代应用领域应用领域主要语言主要语言其他语言其他语言 20世纪世纪60年代年代 商业商业COBOLAssembler科学计算科学计算FORTRANALGOL、BASIC、APL系统系统AssemblerForth人工智能人工智能LISPSNOB

3、OL 现代现代商业商业数据库、数据库、C+、Java、电子表格电子表格lotus C、PL/1科学计算科学计算FORTRAN、C、C+BASIC系统系统C、C+、JavaAda、Modula人工智能人工智能LISP、Prolog SOFTWARE ENGINEERING7.1 编码7.1.2 编码的风格(1)好程序的标准:简明清晰、易读易懂。为了得到好程序需遵循的规则:A 程序内部的文档:标志符:文件名、变量名、常量名、函数名、数组名、子程序名、类型名等用户定义的名称的总称。要选用含义鲜明的名字,若缩写,缩写规则要一致,给每个名字加注释。注释:程序员与程序读者之间通信的重要手段。(模块的注释和

4、语句的注释)视觉组织:源程序清单的布局对程序的可读性影响很大。(阶梯形式使程序的层次结构清晰)【注释规范注释规范】一、函数一、函数 在函数开头,用如下格式注释:在函数开头,用如下格式注释:/*/*Function:DelStringFromString Function:DelStringFromString*/*从一个从一个StringString删除另一个删除另一个StringString。*/*参数:参数:strByDeletestrByDelete,strToDelete strToDelete*/*strByDelete:strByDelete:被删除的字符串(原来的字符串)被删除的

5、字符串(原来的字符串)*/*strToDelete:strToDelete:要从上个字符串中删除的字符串。要从上个字符串中删除的字符串。*/*返回:找到并删除返回返回:找到并删除返回0 0,否则返回,否则返回-1.-1.*/*/【编程风格编程风格】main()int i,j;.for(i=0;i1X1 错写为错写为X1,X 1AND B=0TA=2OR X 1TX=X/AX=X+1返回返回FF(1)语句覆盖语句覆盖 每个判定的每个分支每个判定的每个分支至少执行一次至少执行一次 Test cases:Test cases:A=3,B=0,X=1A=3,B=0,X=1 A=2,B=1,X=1A=2

6、,B=1,X=1 问题:若问题:若X1X1错写为错写为X1,X 1AND B=0TA=2OR X 1TX=X/AX=X+1返回返回FF(2)(2)判定覆盖:判定覆盖:(3)(3)条件覆盖条件覆盖 使每个判定的每个条件的可使每个判定的每个条件的可能取值至少执行一次:能取值至少执行一次:第一判定表达式第一判定表达式:设设条件条件 A1A1 取真取真 记为记为 T1T1 假假 T1T1 条件条件 B=0B=0 取真取真 记为记为 T2T2 假假 T2T2第二判定表达式第二判定表达式:设设条件条件 A=2A=2 取真取真 记为记为 T3T3 假假 T3T3 条件条件 X1X1 取真取真 记为记为 T4

7、T4 假假 T4T4满足条件满足条件:T1,T1,T2,T2 T3,T3 T4,T4入口入口A 1AND B=0TA=2OR X 1TX=X/AX=X+1返回返回FF(3)(3)条件覆盖条件覆盖测试用例测试用例 通过通过 满足的满足的 覆盖覆盖A B X 路径路径 条件条件 分支分支1 0 3 abe T1,T2,T3,T4 b,e2 1 1 abe T1,T2,T3,T4 b,eabcde两个测试用例两个测试用例覆盖了四个覆盖了四个条件八种可能取值条件八种可能取值。未覆盖未覆盖c、d分支分支,不满足,不满足判定覆盖的要求判定覆盖的要求.(4)(4)判定判定/条件条件 覆盖覆盖满足条件满足条件

8、:T1,T1,T2,T2 T3,T3 T4,T4开始开始 (A1)AND(B=0)(A=2)OR(X1)返回返回X=X/AX=X+1FFTTabdce 选取足够多的测试用选取足够多的测试用例,使判断中的每个条例,使判断中的每个条件的所有可能取值至少件的所有可能取值至少执行一次,同时每个判执行一次,同时每个判断本身的所有可能判断断本身的所有可能判断结果至少执行一次结果至少执行一次.(4)(4)判定判定/条件条件 覆盖覆盖 测试用例测试用例 通过通过 满足的满足的 覆盖覆盖 A B X 路径路径 条件条件 分支分支2 0 4 ace2 0 4 ace T1,T2,T3,T4 T1,T2,T3,T4

9、 c c,e e1 1 1 abd1 1 1 abd T1,T2,T3,T4 T1,T2,T3,T4 b b,d d 能同时满足判定、条件两种覆盖标准。能同时满足判定、条件两种覆盖标准。取值。取值。每个判定表达式中条件的各种可每个判定表达式中条件的各种可能组合都至少出现一次。能组合都至少出现一次。全部可能的条件组合为全部可能的条件组合为:A1,B=0 A1,B 0 A 1,B=0 A 1,B 0 A=2,X1 A=2,X 1 A 2,X1 A 2,X 1 Test cases:A=2,B=0,X=4 (T T)A=2,B=1,X=1 (F T)A=1,B=0,X=2 (F T)A=1,B=1,

10、X=1 (F F)问题:没有测试到(问题:没有测试到(T FT F)的路径)的路径入口入口A 1AND B=0TA=2OR X 1TX=X/AX=X+1返回返回FF(5)(5)条件组合覆盖:条件组合覆盖:(6)路径测试法路径测试法 路径测试法路径测试法(path testing)(path testing)着眼于程序执行路径的测试方法 点覆盖边覆盖路径覆盖7.6.2 控制结构测试 常用方式:基本路径测试 基本路径测试步骤:1.根据过程设计结构画出相应的流图 如何程序流程图流图的转换?2.计算流图的环形复杂度 p1373.确定线性独立路径的基本集合 独立路径:指至少引入程序的一个新处理语句集合或

11、一个新条件的路径,用流图术语描述,独立路径至少包含一条在定义该路径之前不曾用过的边。程序的环形复杂度决定了程序中独立路径的数量。它是确保独立路径至少被执行一次所需测试数据的上界。4.设计可强制执行基本集合中每条路径的测试用例SOFTWARE ENGINEERING流程图对应的程序图流程图对应的程序图12,3768910114,512345678.119注意:注意:结点结点2、3和和4、5还有还有9和和10转换时注意:一条边必须终止于一个结点,在选择结构中分支汇聚处即使无语句也应有一个汇聚结点。如果判断中的条件 表达式是复合条件,则需改为一系列只有 单个条件的嵌套判断。如右图所示:A BTPFQ

12、A BQQPA=B 例:用基本路径测试方法对以下的程序(伪码描述)设计用例。Sort for(i=1;i=n-1;i+)k=i;for(j=i+1;jaj)k=j endfor if(k!=i)swap(ai,ak)endfor endSort1234567 Path1:1-7 Path2:1-2-5-1-7 Path3:1-2-5-6-1-7 Path4:1-2-3-2-5-1-7 Path5:1-2-3-4-2-5-6-1-7 设计用例:输入 预期输出结果 通过路径 n=1 排序表中只有一个数 Path1 n2且输入表 已排序的输出表 Path4 中已排序 n2且输入表 已排序的输出表 P

13、ath5 中未排序 Path2和Path3无法单独测试,但已包含在Path4和Path5中 测试过了。SOFTWARE ENGINEERING基本路径测试例题求平均值过程的流图8.4.1 黑盒测试黑盒测试 被测对象是功能独立的模块或构件,注重测试软件被测对象是功能独立的模块或构件,注重测试软件的功能需求。试图发现以下几类错误:的功能需求。试图发现以下几类错误:不正确或遗漏的功能;不正确或遗漏的功能;接口错误;接口错误;数据结构或外部数据库访问错误;数据结构或外部数据库访问错误;性能错误;性能错误;初始化和终止条件错误。初始化和终止条件错误。几种具体的方法:几种具体的方法:(1)(1)等价类划分

14、等价类划分 (2)(2)边界值分析边界值分析 (3)(3)错误推测错误推测 (4)(4)使用判定表使用判定表 黑盒测试黑盒测试(等价类划分等价类划分)主要思想:主要思想:根据被测对象的功能说明和根据被测对象的功能说明和输入域,按合理的或不合理划分为输入域,按合理的或不合理划分为若干等价类,为每个等价类设计一若干等价类,为每个等价类设计一个测试用例,这样大大减少测试次个测试用例,这样大大减少测试次数,提高测试效率。数,提高测试效率。如何划分等价类?如何划分等价类?有效等价类有效等价类(合理等价类合理等价类)无效等价类无效等价类(不合理等价类不合理等价类)划分等价类的标准:划分等价类的标准:覆盖覆

15、盖不相交不相交代表性代表性等价类划分该方法步骤如下:等价类划分该方法步骤如下:1.1.划分等价类划分等价类为每个等价类编号为每个等价类编号 对被测程序功能说明的输入域划分等价类。以下是一些原则或经对被测程序功能说明的输入域划分等价类。以下是一些原则或经验:验:在输入条件规定了取值范围或值的个数的情况下在输入条件规定了取值范围或值的个数的情况下,则可以确立一个则可以确立一个有效等价类和两个无效等价类有效等价类和两个无效等价类.在输入条件规定了输入值的集合或者规定了在输入条件规定了输入值的集合或者规定了“必须如何必须如何”的条件的条件的情况下的情况下,可确立一个有效等价类和一个无效等价类可确立一个

16、有效等价类和一个无效等价类.在输入条件是一个布尔量的情况下在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个可确定一个有效等价类和一个无效等价类无效等价类.在规定了输入数据的一组值(假定在规定了输入数据的一组值(假定n个)个),并且程序要对每一个输并且程序要对每一个输入值分别处理的情况下入值分别处理的情况下,可确立可确立n个有效等价类和一个无效等价类个有效等价类和一个无效等价类.在确知已划分的等价类中各元素在程序处理中的方式不同的情况在确知已划分的等价类中各元素在程序处理中的方式不同的情况下下,则应再将该等价类进一步的划分为更小的等价类则应再将该等价类进一步的划分为更小的等价类.在规定

17、了输入数据必须遵守的规则的情况下在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价可确立一个有效等价 类(符合规则)和若干个无效等价类类(符合规则)和若干个无效等价类(从不同角度违反规则从不同角度违反规则)2.2.设计一个测试用例,使其尽可能多地覆设计一个测试用例,使其尽可能多地覆盖尚未被覆盖的合理等价类,重复这一步盖尚未被覆盖的合理等价类,重复这一步直到所有合理等价类都被覆盖。直到所有合理等价类都被覆盖。3.设计一个测试用例,使其只覆盖一个尚设计一个测试用例,使其只覆盖一个尚未被覆盖的不合理等价类,重复这一步直未被覆盖的不合理等价类,重复这一步直到所有不合理等价类都被覆盖。到所有不合

18、理等价类都被覆盖。等价类划分等价类划分 例:例:设有一个档案管理系统,要设有一个档案管理系统,要求用户输入以年月表示的日期。假设求用户输入以年月表示的日期。假设日期限定在日期限定在1990年年1月月2049年年12月月,并规定日期由,并规定日期由6位数字字符组成,位数字字符组成,前前4位表示年,后位表示年,后2位表示月。现用位表示月。现用等价类划分法设计测试用例,来测试等价类划分法设计测试用例,来测试程序的程序的日期检查功能。日期检查功能。划分等价类如下并为每个等价类编号划分等价类如下并为每个等价类编号 设计测试用例覆盖所有的有效等价类 测试数据 期望结果 覆盖的有效等价类200211 输入有

19、效、为每一个无效等价类设计一个测试用例 测试数据 期望结果 覆盖的无效等价类95June 无效输入 20036 无效输入2001006无效输入 198912 无效输入 206401 无效输入200100 无效输入200113 无效输入 黑盒测试黑盒测试(边界值分析法边界值分析法)(2)边界值分析法边界值分析法使被测程序在边界值及其附近运行,从使被测程序在边界值及其附近运行,从而更有效地暴露而更有效地暴露程序中潜藏的错误。程序中潜藏的错误。例:输入数字范围例:输入数字范围-3276832767测试方案测试方案:3276732767-32768-32768 32768 32768-32769-32

20、769 边界值分析法与等价类划分法区边界值分析法与等价类划分法区别别 边界值分析不是从某等价类中边界值分析不是从某等价类中 随便挑一个作为代表,而是使随便挑一个作为代表,而是使 这个等价类的每个边界都要作这个等价类的每个边界都要作 为测试条件。为测试条件。被测试被测试子子 域域测试内点测试内点测试外点测试外点软件边界与悬崖很类似 边界条件类型边界条件类型 如果软件测试问题如果软件测试问题包含确定的边界包含确定的边界,那那么数据类型可能是么数据类型可能是:数值数值字符字符位置位置数量数量速度速度地址地址尺寸尺寸还要考虑数据类型还要考虑数据类型的特征的特征:第一个第一个/最后一个最后一个最小值最小

21、值/最大值最大值开始开始/完成完成空空/满满最慢最慢/最快最快相邻相邻/最远最远超过超过/在内在内例例:某报表处理系统要求用户输入处理某报表处理系统要求用户输入处理 报表的日期,日期限制在报表的日期,日期限制在20012001年年1 1 月至月至20052005年年1212月,即系统只能对该月,即系统只能对该 段期间内的报表进行处理,如日期段期间内的报表进行处理,如日期 不在此范围内,则显示输入错误信不在此范围内,则显示输入错误信 息。息。系统日期规定由年、月的系统日期规定由年、月的6 6位数字位数字 字符组成,前四位代表年,后两位字符组成,前四位代表年,后两位 代表月。代表月。如何用边界值分

22、析设计测试用例如何用边界值分析设计测试用例,来测试程序的日期检查功能?来测试程序的日期检查功能?输入输入条件条件报表日报表日期的类期的类型及长型及长度度5 5个数字字符个数字字符7 7个数字字符个数字字符6 6个数字字符个数字字符显示出错显示出错显示出错显示出错输入有效输入有效年年范围范围月份月份范围范围“报表日期报表日期”边界值分析法测试用边界值分析法测试用例例测试用例说明测试用例说明测试数据测试数据 期望结果期望结果选取理由选取理由200152001520010052001005200105200105在有效范围边界在有效范围边界上选取数据上选取数据20020120020120021220

23、0212200200200200200213200213200103200103200510200510200002200002200606200606输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错在有效范围在有效范围边界上选取边界上选取数据数据比有效长度少比有效长度少1 1比有效长度多比有效长度多1 1类型及长度均有效类型及长度均有效最小年份最小年份最大年份最大年份刚好小于最小年份刚好小于最小年份刚好大于最大年份刚好大于最大年份最小月份最小月份最大月份最大月份刚好小于最小月份刚好小于最小月份刚好大于最大月份刚好

24、大于最大月份黑盒测试黑盒测试(错误推测法错误推测法)(3)(3)错误猜测法错误猜测法(error guessing)(error guessing)猜测被测程序在哪些地方容易出错猜测被测程序在哪些地方容易出错 针对可能的薄弱环节来设计测试用例针对可能的薄弱环节来设计测试用例(4)(4)使用判定表使用判定表 如果功能说明中含有多个输入条件的逻辑组合,可以建立判定表,判定表的每一列对应一个测试用例。在实际测试中,综合使用这些方法,以达到最有效的测试。SOFTWARE ENGINEERING7.6 调试7.6.1 任务 在成功的测试之后,还必须进一步诊断和改正程序中的错误,这是调试的任务。7.6.2

25、 步骤(1)确定错误的准确位置;(2)仔细研究这段代码以确定问题的原因,并设法改正错误。7.6.2常用的纠错技术插入打印语句插入打印语句设置断点设置断点掩蔽部分程序掩蔽部分程序SOFTWARE ENGINEERING8.6.4 调试过程SOFTWARE ENGINEERING8.6 调试8.6.4 调试策略(1)蛮干法:按着“让计算机自己寻找错误”的策略,印出内存内容,生成大量信息,希望发现错误原因的线索。(2)回溯法:调试人员检查错误征兆,确定最先出现“症状”的地方,然后人工沿程序的控制流往回追踪源程序代码,直到找出错误根源或确定故障范围为止。(3)对分查找法:如果已经知道每个变量在程序内若

26、干个关键点的正确值,则可以用赋值语句或输入语句在程序中点附近“注入”这些变量的正确值,然后检查程序的输出。如果输出结果是正确的,则故障在程序的前半部分;反之,在后半部分。(4)归纳法:就是从个别推断一般的方法,这种方法从线索(错误征兆)出发,通过分析这些线索之间的关系而找出故障。(5)演绎法:先列出所有看来可能成立的原因或假设,然后一个个地排除列举出的原因,最后,证明剩下的原因确实是错误的根源。归纳法 从测试结果发现的错误入手,分析它们之从测试结果发现的错误入手,分析它们之间的联系查找错误。是一种从特殊推断一般间的联系查找错误。是一种从特殊推断一般的系统化思考方法。的系统化思考方法。收集收集有

27、关数据有关数据组织数据组织数据研究数据研究数据间的关系间的关系纠正错误纠正错误能能能能不能不能不能不能列出所有已知列出所有已知的测试用例和的测试用例和程序执行结果程序执行结果常用的构造常用的构造线索的技术线索的技术是是“分类法分类法”分析线索之间分析线索之间的关系,找出的关系,找出矛盾,设计出矛盾,设计出错原因的假设错原因的假设归纳排错法步骤归纳排错法步骤将假设与原始线索将假设与原始线索或数据进行比较,或数据进行比较,能否解释现象,证能否解释现象,证明假设。明假设。提出假设提出假设证明假设证明假设演绎法 演绎法是一种从一般原理出发,经过排演绎法是一种从一般原理出发,经过排除和精化的过程,推导出

28、结论的方法。除和精化的过程,推导出结论的方法。列举可能列举可能的原因的原因排除不适排除不适当的原因当的原因对保留的假对保留的假设继续推断设继续推断证明证明假设假设纠正纠正错误错误收集更多收集更多的数据的数据没有剩余没有剩余不能不能能能有剩余有剩余演绎法排错的步骤演绎法排错的步骤有余有余SOFTWARE ENGINEERING8.6 调试8.6.5 纠错的原则:(1)重在思考;(2)避免紧张;(3)修改要彻底;(4)防止纠错时又引入新的错误。例例:对招干考试系统对招干考试系统“输入学生成绩输入学生成绩”子模块设计测试用例子模块设计测试用例 招干考试分三个专业招干考试分三个专业,准考证号第一位准考

29、证号第一位 为专业代号为专业代号,如如:1-:1-行政专业行政专业,2-2-法律专业法律专业,3-3-财经专业财经专业.行政专业准考证号码为行政专业准考证号码为:110001:110001111215111215法律专业准考证号码为法律专业准考证号码为:210001:210001212006212006财经专业准考证号码为财经专业准考证号码为:310001:310001314015314015 例例:准考证号码的等价类划分准考证号码的等价类划分 有效等价类有效等价类:(1)110001(1)110001 111215111215(2)210001 (2)210001 212006212006(

30、3)310001 (3)310001 314015314015 无效等价类无效等价类:(4)-(4)-110000110000(5)111216 (5)111216 210000210000(6)212007 (6)212007 3100031000(7)314016 (7)314016 +7.9软件可靠性的定义 软件可靠性软件可靠性是软件在给定的时间间隔及是软件在给定的时间间隔及给定的环境条件下,按设计要求,成功给定的环境条件下,按设计要求,成功地运行程序的概率。地运行程序的概率。环境条件环境条件指的是软件的使用环境。无论指的是软件的使用环境。无论是什么软件,如果不对它的使用环境加是什么软件

31、,如果不对它的使用环境加以限制,都是会失效的。这种失效的数以限制,都是会失效的。这种失效的数据,不能用来度量软件的可靠性据,不能用来度量软件的可靠性。软件的可用性软件的可用性是程序在给定的时间点,按照规格说明书的规定,成功地运行的概率。成功地运行程序成功地运行程序是指不仅是指不仅程序能正确地运行,满足用户对它程序能正确地运行,满足用户对它的功能要求,的功能要求,而且当程序一旦受而且当程序一旦受到意外的伤害,或系统故障时,能到意外的伤害,或系统故障时,能尽快恢复,仍能正常地运行。尽快恢复,仍能正常地运行。推测错误的产生频度MTTF 估算错误产生频度的一种方法是估估算错误产生频度的一种方法是估算平

32、均无故障时间算平均无故障时间MTTF,估算公式如下估算公式如下 IT表示程序长度表示程序长度,ET表示测试前程序错误表示测试前程序错误总数总数,EC(t)表示测试阶段发现的错误数表示测试阶段发现的错误数.常数常数K取取200.MTTF=IK EEtTTC()-设设Ns 是在测试前人为地向程序是在测试前人为地向程序中植入的故障数,中植入的故障数,ns 是经过一段时是经过一段时间测试后发现的播种故障数目,间测试后发现的播种故障数目,n 是在测试中又发现的程序原有故障是在测试中又发现的程序原有故障数。设测试用例发现植入故障和原数。设测试用例发现植入故障和原有故障的能力相同,则程序中原有有故障的能力相

33、同,则程序中原有故障总数故障总数 N(=ET)估算值为估算值为NNnnss 利用植入故障法估算ETHyman分别测试法ET 由两个测试员同时互相独立地测由两个测试员同时互相独立地测试同一程序的两个副本,用试同一程序的两个副本,用 t 表示测试表示测试时间,记时间,记 t0时,程序中原有故障总数时,程序中原有故障总数是是 B0;tt1 时,测试员甲发现的故障时,测试员甲发现的故障总数是总数是 B1;测试员乙发现的故障总数;测试员乙发现的故障总数是是 B2;其中两人发现的相同故障数目;其中两人发现的相同故障数目是是 bc;在大程序测试时,头几个月两个测试员在大程序测试时,头几个月两个测试员测试的结

34、果应当比较接近测试的结果应当比较接近 在早期应当每隔一段时间,由两在早期应当每隔一段时间,由两个测试员再进行分别测试,分析测试结个测试员再进行分别测试,分析测试结果,估算果,估算B0,或几次估算值的结果相差,或几次估算值的结果相差不多,则不多,则B0作为原有错误总数的估算值作为原有错误总数的估算值。BBBbc012 SOFTWARE ENGINEERING7.6 白盒测试技术设计测试方案的目标 选用最少量的测试数据,作到尽可能完备的测试.好的测试方案是发现了迄今为止,尚未发现的错误的测试方案.8.5.2 测试方案 包括预定要测试的功能,应该输入的测试数据和预期的结果。8.5.3 测试用例 以发

35、现错误为目的而精心设计的彝族测试数据。测试用例=输入数据+期望结果SOFTWARE ENGINEERING例题 某城市的电话号码由 三部分组成,这三部分的名称与内容分别是:地区码空白或三位数字 前缀非0或1开头的三位数字 后缀4位数字 假设被测程序能接受一切符合上述规定的电话号码,拒绝不符合规定的电话号码。SOFTWARE ENGINEERING输入有效等价类无效等价类地区码(1)空白(2)3位数字(5)有非数字字符(6)少于3位数字(7)多于3位数字前缀(3)200-999的3位数字(8)有非数字字符(9)少于3位数字(10)多于3位数字(11)0开头(12)1开头后缀(4)4位数字(13)

36、有非数字字符(14)少于4位数字(15)多于4位数字SOFTWARE ENGINEERING覆盖有效等价类输入覆盖的有效等价类预期结果()234-5678(1)(3)(4)有效(123)234-5678(2)(3)(4)有效SOFTWARE ENGINEERING覆盖无效等价类输入覆盖无效等价类预期结果(1a3)222-3333(5)无效(12)333-4444(6)无效(1234)555-6666(7)无效(024)2a2-3333(8)无效(024)22-3333(9)无效(024)3333-7777(10)无效(024)012-3333(11)无效(024)111-3333(12)无效(

37、024)333-a999(13)无效(024)555-333(14)无效(024)555-00000(15)无效SOFTWARE ENGINEERING作业 某报表处理系统要求用户输入处理报表的某报表处理系统要求用户输入处理报表的日期,日期限制在日期,日期限制在2001年年1月至月至2005年年12月,即系统只能对该段期间内的报表进行月,即系统只能对该段期间内的报表进行处理,如日期不在此范围内,则显示输入处理,如日期不在此范围内,则显示输入错误信息。错误信息。系统日期规定由年、月的系统日期规定由年、月的6位数字字符组位数字字符组成,前四位代表年,后两位代表月。成,前四位代表年,后两位代表月。S

38、OFTWARE ENGINEERING第一步:等价类划分第一步:等价类划分输入等价类输入等价类 有效等价类有效等价类 无效等价类无效等价类 报表日期的报表日期的类型及长度类型及长度6 6位数字字符位数字字符(1)(1)有非数字字符有非数字字符 (4)(4)少于少于6 6个数字字符个数字字符 (5)(5)多于多于6 6个数字字符个数字字符 (6)(6)年份范围年份范围在在2001200120052005之间之间 (2)(2)小于小于2001(7)2001(7)大于大于2005(8)2005(8)月份范围月份范围在在1 11212之间之间(3)(3)“报表日期报表日期”输入条件的等价类表输入条件的

39、等价类表小于小于1(9)1(9)大于大于12(10)12(10)SOFTWARE ENGINEERING 第二步:为有效等价类设计测试用例第二步:为有效等价类设计测试用例 对表中编号为对表中编号为1,2,31,2,3的的3 3个有效等价类个有效等价类 用一个测试用例覆盖:用一个测试用例覆盖:测试数据 期望结果 覆盖范围200105200105等价类等价类(1)(2)(3)(1)(2)(3)输入有效输入有效SOFTWARE ENGINEERING 第三步:为每一个无效等价类设至少第三步:为每一个无效等价类设至少 计一个测试用例计一个测试用例 测试数据 期望结果 覆盖范围001001MAYMAY等

40、价类等价类(4)(4)输入无效输入无效2001520015等价类等价类(5)(5)输入无效输入无效20010052001005等价类等价类(6)(6)输入无效输入无效200020000505等价类等价类(7)(7)输入无效输入无效200820080505等价类等价类(8)(8)输入无效输入无效200120010000等价类等价类(9)(9)输入无效输入无效200120011313等价类等价类(10)(10)输入无效输入无效不能出现相同不能出现相同的测试用例的测试用例本例的本例的1010个等价类至个等价类至少需要少需要8 8个测试用例个测试用例SOFTWARE ENGINEERING输入输入条件

41、条件报表日报表日期的类期的类型及长型及长度度1 1个数字字符个数字字符5 5个数字字符个数字字符7 7个数字字符个数字字符有有1 1个非数字字符个非数字字符全部是非数字字符全部是非数字字符6 6个数字字符个数字字符显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错显示出错输入有效输入有效年年范围范围月份月份范围范围“报表日期报表日期”边界值分析法测试用边界值分析法测试用例例测试用例说明测试用例说明测试数据测试数据 期望结果期望结果选取理由选取理由5 52001520015200100520010052001.52001.5MAY-MAY-200105200105月份为月份

42、为1 1月月月份为月份为1212月月月份月份11212200201200201200212200212200200200200200213200213200103200103200510200510200002200002200606200606输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错输入有效输入有效输入有效输入有效显示出错显示出错显示出错显示出错在有效范围在有效范围边界上选取边界上选取数据数据仅有仅有1 1个合法字符个合法字符比有效长度少比有效长度少1 1比有效长度多比有效长度多1 1只有只有1 1个非法字符个非法字符6 6个非法字符个非法字符类型及长度均有效类型及长

43、度均有效最小年份最小年份最大年份最大年份刚好小于最小年份刚好小于最小年份刚好大于最大年份刚好大于最大年份最小月份最小月份最大月份最大月份刚好小于最小月份刚好小于最小月份刚好大于最大月份刚好大于最大月份SOFTWARE ENGINEERINGASOFTWARE ENGINEERINGSOFTWARE ENGINEERINGD 2006SOFTWARE ENGINEERINGBSOFTWARE ENGINEERINGB2007SOFTWARE ENGINEERINGBSOFTWARE ENGINEERINGBSOFTWARE ENGINEERINGABSOFTWARE ENGINEERING2008CASOFTWARE ENGINEERINGDSOFTWARE ENGINEERING2009BSOFTWARE ENGINEERINGCSOFTWARE ENGINEERING

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|