版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件测试,回顾基路径测试,基本路径测试,前提条件 测试进入的前提条件是在测试人员已经对被测试对象有了一定的了解,基本上明确了被测试软件的逻辑结构。 测试过程 过程是通过针对程序逻辑结构设计和加载测试用例,驱动程序执行,以对程序路径进行测试。测试结果是分析实际的测试结果与预期的结果是否一致。,基本路径测试步骤: 1.导出程序流程图的拓扑结构程序图 (或DD-路径图) 2.计算流图G的环路复杂度V(G) 3.确定只包含独立路径的基本路径集 4.设计测试用例,1、导出程序流程图的拓扑结构- DD-路径图,2、计算流图G的环路复杂度V(G) 有三种方法计算环路复杂度: V(G)= 区域个数=4 V(G
2、)=边的条数-节点个数+2=4 V(G)=判定节点个数+1=4,3、确定只包含独立路径的基本路径集 path1:1-11 path2:1-2-3-4-5-10-1-11 path3:1-2-3-6-8-9-10-1-11 path4:1-2-3-6-7-9-10-1-11 这4条路径组成了一个基本路径集。4(图的环路复杂度)是构成这个基本路径集的独立路径数的上界,也是设计测试用例的数目。 4、设计测试用例,保证基本路径集中每条路径的执行。,指导方针与观察,问题: 功能性测试:漏洞和冗余,而且不能被发现。 结构性测试的基路径测试方法:用有向图表示代码和程序路径公式化,掩盖了代码中的重要信息,即可
3、行路径和不可行路径的区别。 其他方法:基于数据流的测试,第十章 数据流测试,学习目标,数据流测试(了解) 数据流定义/使用测试(了解),变量被定义,但从来没有使用 所使用的变量没有被定义 变量在使用之前被定义两次 早期的数据流分析常常集中于定义/引用异常的缺陷。,数据流测试,数据流测试: 数据流测试按照程序中的变量定义和使用的位置来选择程序的测试路径。 数据流测试关注变量接收值的点和使用这些值的点。 一种简单的数据流测试策略是要求覆盖每个定义使用路径一次。 数据流测试用做路径测试的“真实性检查”。,10.1 定义/使用测试,定义1:定义节点 节点nG(P)是变量v V的定义节点,记做DEF(v
4、,n),当且仅当变量的值由对应节点n的语句片断处定义。 定义节点语句:输入语句、赋值语句、循环语句和过程调用。,定义2:使用节点 节点nG(P)是变量v V的使用节点,记做USE(v,n),当且仅当变量v的值在对应节点n的语句片断处使用。 使用节点语句:输出语句、赋值语句、条件语句、循环控制语句和过程调用。,定义3:谓词使用、计算使用 使用节点USE(v,n)是一个谓词使用(记做P-use),当且仅当语句n是谓词语句;否则,USE(v,n)是计算使用(记做C-use) 对应于谓词使用的节点,其外度2 对应于计算使用的节点,其外度1,定义4:定义使用路径 定义使用路径(记做du-path):是P
5、ATHS(P)中的路径,使得对某个v V,存在定义和使用节点DEF(v,m)和USE(v,n),使得m和n是该路径的最初和最终节点。,定义5:定义清除路径 定义清除路径(记做dc-path):是具有最初和最终节点DEF(v,m)和USE(v,n)的PATHS(P)中的路径,使得该路径中没有其他节点是v的定义节点。,lockPrice = 45.0 stockPrice = 30.0 barrelPrice = 25.0 totalLocks = 0 totalStocks = 0 totalBarrels = 0 Input(locks) While NOT (locks = -1) Inpu
6、t(stocks, barrels) totalLocks = totalLocks + locks totalStocks = totalStocks + stocks totalBarrels = totalBarrels + barrels Input(locks) EndWhile Output(Locks sold: ,totalLocks) Output(Stocks sold: ,totalStocks) Output(Barrels sold: ,totalBarrels) lockSales = lockPrice*totalLocks stockSales = stockP
7、rice*totalStocks barrelSales = barrelPrice*totalBarrels sales = lockSales + stockSales + barrelSales Output(Total sales: ,sales),例:佣金问题(P144),If (sales1800.0) Then commission=0.10*1000.0 commission=commission+0.15*800.0 commission=commission+0.20*(sales-1800.0) Else If (sales1000.0) Then commission=
8、0.10*1000.0 commission=commission+0.15*(sales-1000.0) Else commission=0.10*sales EndIf Endlf Output(Commission is $,commission) End Commission(此处的Commission是文件名),commission:定义:31,32,33,36,37,38,使用:32,33,37,41,佣金问题变量的定义/使用节点,佣金问题部分定义/使用路径,佣金问题定义/使用路径(续),stocks、barrels、lockSales、stockSales、barrelSales
9、 的定义/使用路径(它们都只有一条定义/使用路径) locks的定义/使用路径 totalLocks的定义/使用路径(有循环体) sales的定义/使用路径 sales只使用了一个定义节点,因此sales的所有定义-使用路径都是定义清除的。 commission的定义/使用路径(有分支),7,13,8,9,10,11,12,14,15,16,17,18,19,26,29,30,31,32,40,34,38,20,21,22,23,24,25,27,28,39,35,36,37,33,41,42,commission 定义:31,32,33,36,37,38; 使用:32,33,37,41;,t
10、otalLocks 定义:10,16; 使用:16,21,24;,定义-使用路径测试覆盖指标,全定义准则 集合T满足程序P的全定义准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的一个使用的定义清除路径。 全使用准则 集合T满足程序P的全使用准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有使用,以及所有USE(v,n)后续节点的定义清除路径。,定义-使用路径测试覆盖指标(续),全谓词使用/部分计算使用准则 集合T满足程序P的全谓词使用/部分计算使用准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有谓词使用的定义清除路径,并且如果v的一个定义没有谓词使用,则定义
11、清除路径导致至少一个计算使用。 全计算使用/部分谓词使用准则 集合T满足程序P的全计算使用/部分谓词使用准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有计算使用的定义清除路径,并且如果v的一个定义没有计算使用,则定义清除路径导致至少一个谓词使用。,定义-使用路径测试覆盖指标(续),全定义-使用路径准则 集合T满足程序P的全定义-使用路径准则,当且仅当所有变量vV,T包含从v的每个定义节点到v的所有使用,以及所有USE(v,n)后续节点的定义清除路径,并且这些路径要么有一次的环经过,要么没有环路。,数据流覆盖指标层次图,第8章 功能性测试回顾,测试工作量(了解) 测试效率(了解)
12、指导方针(了解) 案例研究(了解),本章内容,不同测试方法的测试工作量,8.1 测试工作量,太少的测试是不负责任,过多的测试是一种犯罪。 100的测试是不可能的,不同的用户采用的测试策略是不同的。,测试工作量,边界值,决策表,等价类,标识测试用例效果,低,每种测试方法的测试用例标识工作量趋势线,精细程度,高,三角形问题的测试用例趋势线,按测试方法统计的测试用例三角形问题,NextDate问题的测试用例趋势线,按测试方法统计的测试用例NextDate问题,佣金问题的测试用例趋势线,按测试方法统计的测试用例佣金问题,三个问题的测试用例趋势线,按测试方法统计的测试用例所以问题,功能测试的基本局限 未
13、测试的功能漏洞 冗余测试,8.2 测试效率,8.3 指导方针,在选择功能性测试方法时需要考虑被测对象的属性: 变量是否表示物理量或逻辑量? 变量之间是否存在依赖关系? 是假设单缺陷还是假设多缺陷? 是否有大量例外处理?,功能性测试技术选择的初步的“专家系统”:,如果变量是物理量,可采用定义域测试和等价类测试。 如果变量是独立的,可采用定义域测试和等价类测试。 如果变量不是独立的,可采用决策表测试。 如果是单缺陷假设,可采用边界值分析和健壮性测试。 如果是多缺陷假设,可采用最坏情况测试、健壮性最坏情况测试和决策表测试。 如果程序包含大量例外处理,可采用健壮性测试和决策表测试。 如果变量引用的是逻
14、辑量,可采用等价类测试用例和决策表测试。,功能性测试的合适选择,第十一章 结构性测试回顾,本章内容,什么时候停止测试(了解) 漏洞与冗余(了解) 用于方法评估的指标(了解),11.1 什么时候停止测试?,“不充分的测试是愚蠢的,而过度的测试是一种罪孽”。,影响测试工作量的主要因素,系统的目的 系统的目的的差别在很大程度上影响所需要进行的测试的数量 潜在的用户数量 一个系统的潜在用户数量也在很大程度上影响了测试必要性的程度 信息的价值 开发机构 测试的时机,软件停止测试标准,软件系统经过单元、集成、系统测试,分别达到单元、集成、系统测试停止标准。 软件系统通过验收测试,并已得出验收测试结论。 软
15、件项目需暂停以进行调整时,测试应随之暂停,并备份暂停点数据。 软件项目在其开发生命周期内出现重大估算、进度偏差,需暂停或终止时,测试应随之暂停或终止,并备份暂停或终止点数据。,单元测试停止标准,单元测试用例设计已经通过评审 按照单元测试计划完成了所有规定单元的测试 达到测试计划中单元测试所规定的覆盖率的要求 被测试的单元每千行代码必须发现至少3 个错误 软件单元功能与设计一致 在单元测试中发现的错误已经得到修改,各级缺陷修复率达到标准,集成测试停止标准,集成测试用例设计已经通过评审 按照集成构件计划及增量集成策略完成了整个系统的集成测试 达到了集成测试所规定的覆盖率的要求 被测试的集成工作版本每千行代码必须发现2个错误 集成工作版本满足设计定义的各项功能、性能要求 在集成测试中发现的错误已经得到修改,各级缺陷修复率达到标准,系统测试停止标准,被测试的系统每千行代码必须发现1 个错误,软件测试停止标准(续),覆盖率标准 语句覆盖率最低不能小于80% 测试用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 宿管打卡考勤制度
- 寿司店考勤制度
- 小学上下班考勤制度
- 小学每课考勤制度
- 工人工资考勤制度
- 幼儿园教师资格考试保教知识与能力模拟试卷(附答案)
- 2026年内蒙古呼和浩特市单招职业倾向性考试题库附答案详解(培优)
- 2026年共青科技职业学院单招职业适应性考试题库带答案详解(巩固)
- 2026年信阳艺术职业学院单招职业倾向性考试题库及答案详解(历年真题)
- 2026年内蒙古商贸职业学院单招职业倾向性测试题库带答案详解(培优a卷)
- 第一单元1 多彩的亚洲美术 课件 -2024-2025学年浙人美版(2024)初中美术七年级下册
- GB/T 45166-2024无损检测红外热成像检测总则
- 《山东省技工院校学生职业技能等级认定工作指引(试行)》
- 酒精滴针眼的护理
- 安全生产风险分级管控和隐患排查治理
- 律所合伙人转让协议书模板
- 翻译与文化传播
- Photoshop平面设计与制作(第3版)中职全套教学课件
- 智慧机场解决方案
- 新版煤矿机电运输培训课件
- 人教版四年级上册竖式计算200题及答案
评论
0/150
提交评论