软件工程-82_软件测试和维护1

合集下载

软件工程_软件测试文档

软件工程_软件测试文档

软件工程_软件测试文档软件工程-软件测试文档1:引言1.1 目的1.2 背景1.3 文档范围2:测试策略2.1 测试目标2.2 测试范围2.3 测试方法2.4 测试资源需求2.5 风险评估和管理3:测试计划3.1 测试任务3.2 测试进度安排3.3 测试环境配置3.5 测试数据准备3.6 测试团队组织4:功能测试4.1 功能测试目标4.2 功能测试策略4.3 功能测试用例4.4 功能测试执行和记录5:性能测试5.1 性能测试目标5.2 性能测试策略5.3 性能测试环境配置5.4 性能测试脚本设计5.5 性能测试执行和结果分析6:安全性测试6.1 安全性测试目标6.2 安全性测试策略6.4 安全性测试执行和记录7:可用性测试7.1 可用性测试目标7.2 可用性测试策略7.3 可用性测试用例7.4 可用性测试执行和记录8:兼容性测试8.1 兼容性测试目标8.2 兼容性测试策略8.3 兼容性测试环境配置 8.4 兼容性测试用例8.5 兼容性测试执行和记录9:可靠性测试9.1 可靠性测试目标9.2 可靠性测试策略9.3 可靠性测试用例9.4 可靠性测试执行和记录10:结束标准和评估10:1 测试结束标准10:2 测试评估方法附件:测试用例详细列表、测试报告示例、测试环境配置文档法律名词及注释:1:版权法:保护软件开发者的知识产权,禁止未经许可的软件复制、传播等行为。

2:知识产权:在知识经济时代,知识和信息的创造和应用所带来的经济价值。

3:商标法:保护商标的专有权,禁止他人未经授权使用商标。

4:隐私条款:保护用户个人信息的安全和隐私,限制信息的使用和传播范围。

软件工程选择题汇总

软件工程选择题汇总

1、瀑布模型把软件生命周期划分为八个阶段:问题旳定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。

八个阶段又可归纳为三个大旳阶段:计划阶段、开发阶段和( C )。

A、详细计划B、可行性分析C、运行阶段D、测试与排错2、从构造化旳瀑布模型看,在它旳生命周期中旳八个阶段中,下面旳几种选项中哪个环节出错,( C)对软件旳影响最大。

A、详细设计阶段B、概要设计阶段C、需求分析阶段D、测试和运行阶段3、在构造化旳瀑布模型中,哪一种阶段定义旳原则将成为软件测试中旳系统测试阶段旳目旳( A)。

A、需求分析阶段B、详细设计阶段C、概要设计阶段D、可行性研究阶段4、软件工程旳出现重要是由于( C )。

A、程序设计措施学旳影响B、其他工程科学旳影响C、软件危机旳出现D、计算机旳发展5、软件工程措施学旳目旳是:使软件生产规范化和工程化,而软件工程措施得以实行旳重要保证是(C )A、硬件环境B、软件开发旳环境C、软件开发工具和软件开发旳环境D、开发人员旳素质6、软件开发常使用旳两种基本措施是构造化和原型化措施,在实际旳应用中,它们之间旳关系体现为 ( B )A、互相排斥B、互相补充C、独立使用D、交替使用7、UML是软件开发中旳一种重要工具,它重要应用于哪种软件开发措施( C )A、基于瀑布模型旳构造化措施B、基于需求动态定义旳原型化措施C、基于对象旳面向对象旳措施D、基于数据旳数据流开发措施8、在下面旳软件开发措施中,哪一种对软件设计和开发人员旳开发规定最高( B)A、构造化措施B、原型化措施C、面向对象旳措施D、控制流措施9、构造化分析措施是一种预先严格定义需求旳措施,它在实行时强调旳是分析对象旳(B )A、控制流B、数据流C、程序流D、指令流10、软件开发旳构造化生命周期措施将软件生命周期划提成( C)A、计划阶段、开发阶段、运行阶段B、计划阶段、编程阶段、测试阶段C、总体设计、详细设计、编程调试D、需求分析、功能定义、系统设计11、软件开发中常采用旳构造化生命周期措施,由于其特性而一般称其为( A)A、瀑布模型B、对象模型C、螺旋模型D、层次模型12、软件开发旳瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为也许占用人员最多旳阶段是(A )A、分析阶段B、设计阶段C、编码阶段D、测试阶段13、需求规格阐明书旳作用不应当包括( D)。

软件工程导论课后习题答案

软件工程导论课后习题答案

软件工程导论课后习题答案1. 什么是软件工程?软件工程是将系统化、规范化的方法应用于软件的开发、运行和维护的一门学科。

它包括软件需求分析、软件设计、软件开发、软件测试、软件维护等工作,旨在提高软件开发过程的效率和质量。

2. 软件生命周期是什么?软件生命周期是指软件从概念到退役的整个过程。

它通常包括以下阶段:需求分析、软件设计、编码、测试、部署、运维和退役。

3. 软件需求分析的目的是什么?软件需求分析的目的是理解客户和用户的需求,明确软件系统应具备的功能和性能要求,并以此为基础,为后续的设计、开发和测试工作提供准确的需求规格说明。

4. 软件设计的原则有哪些?•模块化原则:将软件划分为多个模块,每个模块负责一个特定的功能,以实现代码的复用和可维护性的提高。

•高内聚低耦合原则:模块内部的元素之间高度相关,而模块之间的依赖关系要尽量降低。

•封装原则:隐藏实现细节,将内部数据和操作通过接口封装起来,提供对外的访问方式。

•可读性原则:代码要易于阅读和理解,一致的命名和简洁的代码结构能提高代码的可读性。

•可测试性原则:设计要有良好的可测试性,便于进行单元测试和集成测试。

5. 软件开发过程中的常用模型有哪些?•瀑布模型:按照线性流程顺序依次完成需求分析、设计、开发、测试和部署等阶段。

•敏捷开发模型:采用迭代和增量的方式进行开发,快速响应需求变化。

•喷泉模型:将软件生命周期看做是连续不断的循环,在每个循环内快速迭代开发、测试和部署。

6. 软件测试的目的是什么?软件测试的目的是为了发现软件中的缺陷和错误,并尽早地修复这些问题,以确保软件的质量和可靠性。

通过测试,可以评估软件的功能是否满足需求,并验证软件是否在各种工作环境中正常工作。

7. 软件维护的类型有哪些?•纠错性维护:修复软件中的错误和缺陷。

•适应性维护:适应环境的变化,如操作系统升级、硬件设备更换等。

•完善性维护:根据用户的反馈和需求对软件进行改进和增强。

•预防性维护:对软件进行优化和调整,以提高性能和可维护性。

系统与软件工程 软件测试 第1部分:概念和定义

系统与软件工程 软件测试 第1部分:概念和定义

系统与软件工程软件测试第1部分:概念和定义系统与软件工程概念系统与软件工程是一门综合性的学科,它研究如何有效地开发、构建、管理和维护软件系统。

它关注的主要问题包括软件开发过程、软件项目管理、软件质量保证、软件测试和维护等方面。

系统与软件工程是计算机科学和工程领域中最重要的分支之一。

定义系统与软件工程是一种以科学方法为基础,以系统化的、规范化的、可量化的方法来开发和维护软件系统的过程。

它包括了对需求进行分析和规划,设计和实现,测试和验证,以及部署和维护等环节。

第2部分:软件测试概念在系统与软件工程中,软件测试是一项非常重要的活动。

它是指通过运行程序或应用程序来检查其是否符合预期功能或性能要求的过程。

通过进行测试可以帮助我们找到并纠正程序中存在的错误,从而提高其质量。

定义软件测试是指通过运行程序来评估其质量,并检查其是否符合预期功能或性能要求的过程。

这个过程通常包括了计划、设计、执行和评估等环节。

其中计划环节包括了确定测试目标、测试策略和测试计划等;设计环节包括了制定测试用例、测试数据和测试环境等;执行环节包括了运行测试用例和记录测试结果等;评估环节则是对测试结果进行分析和总结,以便于改进软件质量。

第3部分:软件测试的类型黑盒测试黑盒测试是一种基于软件外部功能的测试方法。

它不考虑程序内部的实现细节,而是通过输入一组给定的输入,并观察输出结果来检查程序是否符合预期功能要求。

白盒测试白盒测试是一种基于软件内部代码结构的测试方法。

它考虑程序内部实现细节,通过检查程序中各个模块之间的交互关系、循环结构、条件语句等来检查程序是否符合预期要求。

灰盒测试灰盒测试是介于黑盒和白盒之间的一种混合型的测试方法。

它既考虑了软件外部功能,也考虑了内部代码结构。

第4部分:软件缺陷与错误概念在软件开发中,缺陷和错误是指在程序中存在的问题或错误。

缺陷通常指设计或编码过程中遗漏或错误地实现某些功能的问题,而错误则是指程序中存在的逻辑或语法错误。

软件工程知识点

软件工程知识点

软件工程知识点1. 软件工程概述软件工程是一门研究和应用工程原则、方法和工具来开发和维护高质量软件系统的学科。

它涵盖了软件开发的整个生命周期,包括需求分析、设计、编码、测试、部署和维护。

2. 软件生命周期软件生命周期定义了软件开发过程中的各个阶段,包括需求定义、系统设计、详细设计、编码、测试、部署和维护等。

每个阶段都有特定的任务和交付物,通过严格遵循软件生命周期来管理项目,可以提高软件开发的质量和效率。

3. 软件需求分析软件需求分析是确定软件系统所需功能和性能的过程。

它包括对用户需求进行调查、分析和规范化,以便从中获得详细的系统需求。

4. 软件设计软件设计是根据需求分析的结果,确定软件系统的结构和组成部分的过程。

它包括软件架构设计、模块设计、数据结构设计等。

5. 软件编码软件编码是将设计好的软件系统转化为可执行的计算机程序的过程。

在编码过程中,开发人员需要遵循相应的编程规范和标准,以确保代码的可读性和可维护性。

6. 软件测试软件测试是为了发现和修复软件中的错误和缺陷。

测试可以分为单元测试、集成测试、系统测试和验收测试等不同的层级和类型,旨在确保软件功能的正确性和稳定性。

7. 软件部署软件部署是将软件安装和配置到用户的计算机系统中的过程。

在部署过程中,需要注意安装环境、配置文件和用户权限等问题,确保软件能够正常运行。

8. 软件维护软件维护是为了修复软件中的错误、改进功能以及适应新的需求而进行的修改和更新。

维护过程中包括问题分析、修改设计、修改代码、测试和发布等环节。

9. 软件质量保证软件质量保证是通过制定和执行软件质量标准、流程和方法,以确保软件开发过程中的质量问题被及时发现和解决的一系列活动。

包括代码审查、测试自动化、性能测试等。

10. 软件项目管理软件项目管理是对软件开发项目进行规划、组织、监控和控制的活动。

它包括项目需求管理、进度管理、资源管理、风险管理等方面,以确保软件项目按时、按质量要求完成。

第1章软件工程和软件测试概述

第1章软件工程和软件测试概述
9
1.1软件工程概述- 软件工程
• 1968年北大西洋公约组织的计算机科学家在联邦 德国召开国际会议,讨论软件危机问题,在这次 会议上正式提出并使用了“软件工程”这个名词。 • 软件工程是指导计算机软件开发和维护的一门工 程学科,它是采用工程的概念、原理、技术和方 法来开发与维护软件,把经过时间考验而证明正 确的管理技术和当前能够得到的最好的技术方法 结合起来,以经济地开发出高质量的软件并有效 地进行维护。
• 实际问题的复杂性 实际问题的复杂性 • 程序逻辑结构的复杂性 程序逻辑结构的复杂性
5
1.1软件工程概述- 软件的分类
• 按软件的功能进行划分: 按软件的功能进行划分:
– 系统软件
• • • • • • • • • 操作系统 数据库管理系统 设备驱动程序 通信处理程序等
– 支撑软件
文本编辑程序 文件格式化程序 磁盘向磁带向数据传输的程序 程序库系统 支持需求分析、设计、实现、 支持需求分析、设计、实现、测试和支持管理的软件
• 软件是计算机系统中与硬件相互依存的另一部
它是包括程序 及其相关文档 分,它是包括程序,数据及其相关文档的完整集 它是包括程序,数据及其相关文档的完整集 其中: 合。其中:
– 程序 程序(instructions)是按事先设计的功能和性能要求 是按事先设计的功能和性能要求 执行的指令序列 – 数据 数据(data)是使程序能正常操纵信息的数据结构 是使程序能正常操纵信息的数据结构 – 文档 文档(documents)是与程序开发,维护和使用有关的 是与程序开发, 是与程序开发 图文材料
– 问题定义 – 可行性研究 – 需求分析
18
1.1软件工程概述-软件开发时期
• 开发时期具体设计和实现在前一个时期定 义的软件,它通常由下述4个阶段组成

《软件工程》课程标准

《软件工程》课程标准

《软件工程》课程标准一、课程基本信息二、课程的性质、目的和任务1.课程性质《软件工程》是我院电子信息工程技术专业(物联网方向)学生必修的专业核心课程。

本课程主要为软件设计、开发企业培养具有软件设计开发能力,了解软件项目开发规范,具备软件项目管理知识的实践型人才。

帮助学生进入该类企业,从事软件项目设计、开发、测试与维护奠定基础。

2.目的和任务通过本课程的学习使学生理解软件工程的基本原理、软件项目开发各阶段的任务,掌握传统的结构化设计方法和面向对象的开发方法,能够使用Rose、Viso等建模工具进行软件项目设计,按照标准规范地进行软件项目开发,在整个软件项目开发各阶段形成规范的文档,,并具备基本的软件项目管理能力。

在项目开发过程中,培养科学的思维方法,灵活运用知识的能力,养成良好的编程习惯,积累软件项目开发经验,为学生职业能力培养和职业综合素质培养起重要支撑作用。

三、课程教学的基本要求四、课程的教学重点和难点、学时分配教学重点:数据库基本概念及关系模型、数据库逻辑结构设计、创建数据库、数据表,设置数据库完整性、数据库的简单查询、统计查询、连接查询、视图使用、存储过程与触发器的使用、用户、权限、角色等管理、数据库访问。

教学难点:数据模型、体系结构、数据建模、数据库的子查询、权限设置、 数据库访问。

课程学时分配一览表五、相关课程的衔接其前导课程有《C语言程序设计》、《电子技术》、《电子技术应用与实践》、《.Net 初级应用》,后续课程有《.NET高级应用》等。

六、实验教学七、其它课程的考核与评价。

理论与实践相结合,注重过程考核,科学全面地评价学生的综合素质。

考核方式为过程考核+综合考核。

强调学生平时学习的态度和知识的积累。

学生成绩包括平时成绩和期末考试成绩,其中,平时成绩占50%,期末考核占50%。

成绩考核方法分为过程考核和理论考核两种。

平时成绩为过程考核,包括出勤表现10%、课堂提问10%、作业测评10%、实践操作10%、实践报告10%,主要考核学生的实践动手能力、团队协作精神、服从意识等。

软件工程实验1-软件测试

软件工程实验1-软件测试

软件工程实验1-软件测试软件工程实验 1 软件测试在当今数字化的时代,软件已经成为我们生活和工作中不可或缺的一部分。

从智能手机上的各种应用程序,到企业内部复杂的业务系统,软件的质量和稳定性直接影响着用户的体验和业务的顺利进行。

而软件测试作为确保软件质量的关键环节,其重要性不言而喻。

在本次软件工程实验 1 中,我们深入探讨了软件测试的相关知识和实践。

软件测试,简单来说,就是对开发完成的软件进行检查和验证,以发现其中可能存在的缺陷和问题。

它并不仅仅是在软件完成后进行的一项工作,而是贯穿于整个软件开发的生命周期。

从需求分析阶段开始,测试人员就需要参与其中,对需求的可测试性进行评估,并制定相应的测试策略。

在软件测试中,有多种不同的测试类型。

其中,最常见的包括功能测试、性能测试、兼容性测试、安全测试等。

功能测试是软件测试的基础,它主要检查软件的各项功能是否能够按照预期正常工作。

测试人员会根据软件的需求规格说明书,设计一系列的测试用例,对软件的各种功能进行逐一验证。

比如,对于一个在线购物网站,功能测试会包括用户注册登录、商品浏览、下单购买、支付结算等功能的测试。

性能测试则关注软件在不同负载条件下的响应时间、吞吐量、资源利用率等性能指标。

通过性能测试,可以发现软件在处理大量数据或高并发请求时是否存在性能瓶颈,从而提前进行优化和改进。

例如,对于一个电商平台,在双十一等购物高峰期,能否承受巨大的访问量,保证系统的稳定运行,就是性能测试需要关注的重点。

兼容性测试主要考虑软件在不同的操作系统、浏览器、硬件设备等环境下的兼容性。

由于用户使用的设备和环境千差万别,如果软件不能在各种常见的环境下正常运行,就会给用户带来极大的不便。

比如,一款手机应用程序需要在不同品牌和型号的手机上,以及不同版本的操作系统上都能正常安装和使用。

安全测试则是为了发现软件中可能存在的安全漏洞,如数据泄露、权限控制不当、SQL 注入等。

随着网络安全威胁日益严峻,安全测试已经成为软件测试中不可或缺的一部分。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件测试与维护
电子科大生命学院 王玲
P‹#›
黑盒法
不考虑程序的内部结构与特性,只 根据程序功能或程序的外部特性设 计测试用例。








分 类
分 析
推 测





软件测试与维护
电子科大生命学院 王玲
P‹#›
电子科大生命学院 王玲
通过选择适当 的测试用例, 等价分类执法 行程序
边值分析法 错误推测法
因果图法
P‹#›
一、静态分析方法
① 调用图:从语义的角度考察程序的控制路线。
A READY
N
B
Y>0
Y
C
X=Y
Y
X<0 D
E
N
调用子程序
无论Y 为何值, 都不能够调用子
程序。
即执行ABC后, 是不可能执行路 径CDE的。
电子科大生命学院 王玲
P‹#›
软件测试阶段的重点
目的:发现和改正错误 名词:测试用例 重要的方法
静态测试 动态测试(白盒测试、黑盒测试)
软件测试的步骤和每步的任务 应用
白盒测试,黑盒测试
软件测试与维护
电子科大生命学院 王玲
P‹#›
5.2 软件测试的特点
1、软件测试的开销大
统计->软件测试的开销大约占总成本的30%50%,工作量占开发过程的40%-50%。
满足条件覆盖,但不满足判断 覆盖。
电子科大生命学院 王玲
P‹#›
4、判定/条件覆盖
• 同时满足判断覆盖和条 件覆盖。
A
a>1 AND b=0
N
B
C
Y
x=x/a
a=2 OR x>1
DN
E
Y
X++
应满足以下覆盖情况: 条件: a>1, a≤1, b=0, b≠0
a=2, a≠2, x>1, x≤1
应执行路径 ACE ∧ ABD 或 ACD ∧ ABE 选择用例:
软件测试与维护
电子科大生命学院 王玲
P‹#›
5.1 软件测试的目的和重要性
1963年美国飞往火星的火
箭爆炸,原因是
FORTRAN程序:DO 5
I=1,3
误写为:DO 5 I=1. 3
损失1000万美元。
1967年苏联“联盟一 号”宇宙飞船返回时
因忽略一个小数点,
在进入大气层时打不
开降落伞而烧毁。
软件测试与维护
软件测试与维护
电子科大生命学院 王玲
P‹#›
一、静态分析方法
② 数据流分析图:检查分析变量的定义和引用情况。
1
R=0.5
2
W=1/S
3 Y=A**W
4 Y=E*W
5 Z=X+Y
6 C=Z*S
节点 —表示单个语句。 有向边 —表示控制结构。 d — 定义 r — 引用 u — 未引用
➢ R:duuuuu 只定义不用














覆 盖
覆 盖
软件测试与维护
电子科大生命学院 王玲
P‹#›
白盒法步骤
逻辑结构
1)选择逻辑覆盖标准。 2)按照覆盖标准列出所有情况。 3)选择确定测试用例。 4)验证分析运行结果与预期结果。
软件测试与维护
电子科大生命学院 王玲
P‹#›
案例1:白盒法测试
if(a>1 && b==0) x=x/a;
没有此记录
105001/软件工程/2019/ 空
单击“相应查看”按钮
查询 查询
返回学生列表 显示学生基本信息
实际测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 结果
同预期测试 果
同预期测试 结果
软件测试与维护
电子科大生命学院 王玲
添加、更 此记录已经存在 新
学生个人 选择学生列表前的选框, 删除 基本信息 单击“删除”按钮
显示,学 确认删除单击“确定” 删除
生查询, 按钮
添加学生, 选择学生列表前的选框, 备份 编辑学生 单击“备份”按钮
个人基本 确认备份单击”确认
备份
信息
“按钮
105008
查询
是否要删除XX
返回学生列表,删除成 功 是否要备份XX,备份后 将删除相关记录 操作成功
选择用例(其一): ⑴ [(2,0,4),(2,0,3)] ACE
[(1,1,1),(1,1,1)] ABD ⑵ [(2,1,1),(2,1,2)] ABE
[(3,0,3),(3,1,1)] ACD
软件测试与维护
电子科大生命学院 王玲
P‹#›
3、条件覆盖
A
a>1 AND b=0
N
B
C
Y
x=x/a
a=2 OR x>1
[(2,0,4),(2,0,3)](ACE) [(1,1,1),(1,1,1)] (ABD)
软件测试与维护
电子科大生命学院 王玲
P‹#›
5、条件组合覆盖
• 使得每个判定中条件的各种 可能组合都至少出现一次。
A
x>1
N
B
Y cb=0
N
Y
a=x/a
a=2 Y
N Y
x>1
N
D
E
x++
编译系统下的执行情况: 部分路径未被执行。
满足以下覆盖情况:
① a>1, b =0 ② a>1, b≠0 ③ a≤1, b=0 ④ a≤1, b≠0 ⑤ a=2, x>1 ⑥ a=2, x≤1 ⑦ a≠2, x>1 ⑧ a≠2, x≤1
选择用例: [(2,0,4),(2,0,3)] ① ⑤ [(2,1,1),(2,1,2)] ② ⑥ [(1,0,3),(1,0,4)] ③ ⑦ [(1,1,1),(1,1,1)] ④ ⑧
P‹#›
5.4 生存周 期软件开发 V模型
软件测试与维护
电子科大生命学院 王玲
P‹#›
5.5 软件测试方法
软件测 试方法
软件测试与维护
静态分 析方法
桌前检查
代码会审 步行检查 调用图
数据流分析图
以人工的、非 形式化的方法 对程序进行分 析和测试
动态分 析方法
白盒法 黑盒法
语句覆盖 条件覆盖 判定覆盖 组合覆盖
2、不能进行“穷举”测试
程序P有两个整型输入量 X、Y,输出量为Z, 在32位机上运行
3、软件测试难度大
“高效的测试用例”
软件测试与维护
电子科大生命学院 王玲
P‹#›
5.3 软件测试的基本原则
1、尽量不由程序设计者进行测试。
2、关键是注重测试用例的选择。
输入数据的组成(输入数据、预期的输出结果) 既有合理输入数据,也有不合理的输入数据。 用例既能检查应完成的任务,也能够检查不应
该完成的任务。 长期保存测试用例。
3、充分注意测试中的群集现象。
软件测试与维护
电子科大生命学院 王玲
P‹#›
测试 项目
学生 个人 基本 信息 管理 测试
测试目的 输入
测试操 预期测试结果 作
全为空 105001,张晓,… 105001,张晓,…
添加、更 必填项不能为空 新
添加、更 操作成功 新
用例格式: [输入(a,b,x),输出(a,b,x)]
选择用例: [(2,0,4),(2,0,3)]
软件测试与维护
电子科大生命学院 王玲
P‹#›
2、判定覆盖
A
a>1 AND b=0
N
B
C
Y
x=x/a
a=2 OR x>1
DN
E
Y
x++
• 使得程序中每个判定至少 为TRUE 或FALSE各一次。
覆盖情况:应执行路径 ACE ∧ ABD 或 ACD ∧ ABE
D
N
E
Y
x++
软件测试与维护
• 使得判定中的每个条件 获得各种可能的结果。
应满足以下覆盖情况: 判定一: a>1, a≤1, b=0, b≠0 判定二: a=2, a≠2, x>1, x≤1 选择用例:
[(2,0,4),(2,0,3)] [(1,1,1),(1,1,1)]
注意:[(1,0,3),(1,0,4)] [(2,1,1),(2,1,2)]
if(a==2 || x>1) x++;
a>1 AND b=0
N
Y
x=x/a
a=2
Y
OR
x>1
N
x++
软件测试与维护
电子科大生命学院 王玲
P‹#›
1、语句覆盖
A
a>1
Y
AND
b=0
N
B
C
x=x/a
a=2
YE
OR
x>1
DN
x++
• 使得程序中每个语句至 少都能被执行一次。
满足语句覆盖的情况: 执行路径:ACE
➢ S :uruuur 未定义引用 ➢ Y:uuddru 连续定义
软件测试与维护
电子科大生命学院 王玲
相关文档
最新文档