软件测试试题

合集下载

软件测试题大全及答案

软件测试题大全及答案

软件测试题大全及答案一、选择题1. 软件测试的目的是以下哪项?A. 确保软件没有错误B. 发现软件中的缺陷C. 证明软件是可靠的D. 增加软件的功能答案:B2. 黑盒测试不关心以下哪一项?A. 输入数据B. 程序代码C. 功能需求D. 预期结果答案:B3. 以下哪项不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 数据库测试答案:D4. 软件测试中的“回归测试”是指什么?A. 对新开发的功能进行测试B. 对修改后的功能进行重新测试C. 对软件的性能进行测试D. 对软件的安全性进行测试答案:B5. 以下哪项是白盒测试技术?A. 等价类划分B. 边界值分析C. 语句覆盖D. 状态转换答案:C二、填空题6. 软件测试分为两大类:_______测试和_______测试。

答案:黑盒;白盒7. 测试用例通常包括测试输入、测试执行条件、测试步骤和_______。

答案:预期结果8. 软件测试的基本原则之一是“早期和频繁地进行测试”,这意味着测试活动应_______软件开发周期的开始,并持续进行到_______。

答案:伴随;结束9. 性能测试主要关注软件应用的_______、_______、可靠性、可用性和可维护性。

答案:正确性;效率10. 探索性测试是一种_______的测试方法,它不依赖于正式的测试计划,而是依赖于测试员的经验和直觉。

答案:结构化;非三、简答题11. 什么是软件测试?请简述其重要性。

答案:软件测试是一种评估软件质量的过程,旨在验证软件的各个部分是否按照设计和需求正常运行,并发现软件中的缺陷。

软件测试的重要性在于它能够确保软件产品的可靠性和稳定性,减少软件发布后的风险和成本,提高用户满意度,最终保障企业的市场竞争力。

12. 请解释什么是“测试金字塔”?答案:测试金字塔是一种软件测试方法论,它将测试分为三个层次:单元测试(底部)、集成测试(中间)和端到端测试(顶部)。

金字塔的底部很宽,意味着应该有更多的单元测试,因为它们快速、独立且易于自动化。

软件测试考试题

软件测试考试题

一、判断正误题(每小题1分,共10分)1. 测试是证明软件正确的方法。

(╳)2. 负载测试是验证要检验的系统的能力最高能达到什么程度。

(√)3. 测试中应该对有效和无效、期望和不期望的输入都要测试。

(√)4. 对于连锁型分支结构,若有n个判定语句,则有2n条路径。

(√)5. 验收测试是由最终用户来实施的。

(√)6. GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。

(√)7. 测试人员要坚持原则,缺陷未修复完坚决不予通过。

(√)8. 黑盒测试也称为结构测试。

(╳)9. 代码评审员一般由测试员担任。

(╳)10. 集成测试计划在需求分析阶段末提交。

(╳)二、不定项选择题(每题可能有一个或多个选项应选,每题2分,共20分。

多选不得分,少选仅得1分。

)1.软件验收测试的合格通过准则是:(AD)A.软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。

B.所有测试项没有残余一级、二级和三级错误。

C.立项审批表、需求分析文档、设计文档和编码实现一致。

D.验收测试工件齐全。

2.软件测试计划评审会需要哪些人员参加?(ABCD)A.项目经理B.SQA 负责人C.配置负责人D.测试组3.下列关于alpha 测试的描述中正确的是:(A D)A.alpha 测试需要用户代表参加B.alpha 测试不需要用户代表参加C.alpha 测试是系统测试的一种D.alpha 测试是验收测试的一种4.测试设计员的职责有:(BC)A.制定测试计划B.设计测试用例C.设计测试过程、脚本D.评估测试活动5.软件实施活动的进入准则是:(ABC)A.需求工件已经被基线化B.详细设计工件已经被基线化C.构架工件已经被基线化D.项目阶段成果已经被基线化6、典型的瀑布模型的四个阶段是:(ABCD)A、分析B、设计C、编码D、测试E、需求调研F、实施7.下面的哪一项测试步骤中需要进行局部数据结构测试:(A)A、单元测试B、集成测试C、确认测试D、系统测试8.从是否需要执行被测软件的角度,软件测试技术可划分的类型是:(AC)。

软件测试笔试题及答案

软件测试笔试题及答案

软件测试笔试题及答案一、选择题1. 下列哪项不属于软件测试的目标?a) 发现软件中的缺陷b) 验证软件是否满足需求c) 确保软件具有高性能d) 提高软件的可靠性答案:c) 确保软件具有高性能2. 在测试活动中,以下哪个过程通常位于最后?a) 单元测试b) 验收测试c) 回归测试d) 静态测试答案:b) 验收测试3. 在软件测试中,猴子测试是指什么?a) 随机输入测试b) 随机点击测试c) 随机操作测试d) 随机接口测试答案:a) 随机输入测试4. 以下哪个是黑盒测试技术?a) 语句覆盖测试b) 边界值分析测试c) 静态代码分析d) 回归测试答案:b) 边界值分析测试5. 在软件测试中,白盒测试是指什么?a) 只测试软件的外部功能b) 只测试软件的内部逻辑c) 组合黑盒和白盒测试的方法d) 只测试软件的用户界面答案:b) 只测试软件的内部逻辑二、填空题1. 简述软件测试的目标。

答案:软件测试的目标是发现软件中的缺陷、验证软件是否满足需求、提高软件的可靠性。

2. 请简要说明单元测试的作用。

答案:单元测试主要是测试软件中的最小单元模块,以确认每个模块都能正常运行且满足预期。

它有助于提早发现和修复代码错误,避免错误在整个系统中扩散。

3. 请解释回归测试的含义。

答案:回归测试是指在软件发生变化后,重新执行旧的测试用例,以确保修改不会影响原有的功能和系统稳定性。

它有助于保证系统在修改后仍能正常工作,不引入新的问题。

三、解答题1. 请简要介绍一下常用的软件测试方法。

答案:常用的软件测试方法包括黑盒测试和白盒测试。

黑盒测试主要关注软件的外部功能,不考虑内部逻辑,通过输入合法和非法数据来测试软件的响应和输出是否符合预期。

而白盒测试则关注软件的内部逻辑,通过检查代码覆盖率和执行路径来验证软件的正确性。

2. 简要描述一下软件测试生命周期中的各个阶段。

答案:软件测试生命周期包括需求分析、测试计划、测试设计、测试执行和测试评估。

软件测试考试试题

软件测试考试试题

软件测试考试试题软件测试考试试题在软件开发领域中,软件测试是非常重要的一环。

通过测试,可以发现和修复软件中的错误和缺陷,提高软件的质量和稳定性。

为了评估软件测试人员的能力和知识,各种软件测试考试应运而生。

本文将介绍一些常见的软件测试考试试题,以帮助读者更好地了解软件测试的知识和技能。

一、选择题1. 下列哪个不是软件测试的目的?A. 发现软件中的错误和缺陷B. 提高软件的质量和稳定性C. 验证软件是否满足用户需求D. 完全消除软件中的错误和缺陷2. 下列哪个不是软件测试的基本原则?A. 测试应该早期开始B. 100%的测试覆盖率是可行的C. 测试应该与开发过程同步进行D. 测试应该持续进行3. 下列哪个不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 缺陷测试二、填空题1. 软件测试的主要目的是________软件中的错误和缺陷。

2. 软件测试的基本原则之一是测试应该与________过程同步进行。

3. 软件测试的主要分类包括单元测试、________测试和系统测试等。

三、简答题1. 请简要介绍一下软件测试的基本原则。

软件测试的基本原则包括:测试应该早期开始,测试应该与开发过程同步进行,测试应该持续进行。

早期开始的测试可以尽早发现和修复错误和缺陷,减少后期修复的成本。

与开发过程同步进行的测试可以及时发现问题,提高开发效率。

持续进行的测试可以保证软件的质量和稳定性。

2. 请简述一下单元测试和系统测试的区别。

单元测试是对软件中的最小单元进行测试,通常是对函数或模块进行测试。

它的目的是验证每个单元的功能是否正常。

而系统测试是对整个软件系统进行测试,验证软件是否满足用户需求。

单元测试注重细节和功能的正确性,而系统测试注重整体性和用户体验。

四、应用题某个软件开发团队正在开发一个电商网站,你是负责软件测试的人员。

请根据以下需求描述,设计相应的测试用例。

需求描述:用户可以通过网站注册账号,并登录购买商品。

软件测试基础试题及答案详解大全

软件测试基础试题及答案详解大全

软件测试基础试题及答案详解大全一、单项选择题1. 软件测试的目的是以下哪项?A. 确保软件没有错误B. 确保软件符合用户需求C. 发现并修复所有软件缺陷D. 增加软件的销售量答案:B详解:软件测试的主要目的是确保软件产品符合用户的需求和预期,而不仅仅是发现错误或增加销量。

2. 黑盒测试不关心以下哪项内容?A. 输入数据B. 程序内部结构C. 测试用例设计D. 输出结果答案:B详解:黑盒测试,又称为功能测试或数据驱动测试,只关心软件的功能和输出,而不关心程序的内部结构。

3. 以下哪项不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 项目管理答案:D详解:项目管理不属于软件测试的类型,它是软件开发过程中的一个独立领域。

二、多项选择题1. 以下哪些属于软件测试的阶段?A. 需求分析B. 单元测试C. 集成测试D. 维护测试答案:B, C, D详解:需求分析是软件开发的早期阶段,不属于软件测试阶段。

单元测试、集成测试和维护测试都是软件测试的不同阶段。

2. 在软件测试中,哪些信息是测试人员需要了解的?A. 软件需求B. 软件设计C. 用户手册D. 测试工具答案:A, B, C详解:测试人员需要了解软件需求、软件设计和用户手册,以便更好地设计测试用例和执行测试。

测试工具是可选的,取决于测试的具体环境和需求。

三、判断题1. 所有的软件缺陷都可以在测试阶段被发现。

(对/错)答案:错详解:尽管软件测试旨在发现尽可能多的缺陷,但由于时间和资源的限制,以及测试本身的局限性,不可能发现所有的软件缺陷。

2. 自动化测试可以完全替代手动测试。

(对/错)答案:错详解:自动化测试和手动测试各有优势和局限性。

自动化测试可以高效地执行重复性高的测试,而手动测试则更适用于探索性测试和用户交互界面的测试。

两者通常结合使用以提高测试效率和覆盖率。

四、简答题1. 什么是回归测试,为什么要进行回归测试?答案:回归测试是指在软件已经通过测试并发布后,由于修复了某个缺陷或在软件中添加了新的功能,需要重新进行的测试。

软件测试试题及答案答案

软件测试试题及答案答案

软件测试试题及答案答案一、单项选择题(每题2分,共10分)1. 软件测试的目的是:A. 证明软件无缺陷B. 证明软件存在缺陷C. 证明软件符合需求规格D. 证明软件符合设计规格答案:B2. 黑盒测试的主要依据是:A. 程序内部逻辑B. 程序外部特性C. 程序数据结构D. 程序运行环境答案:B3. 以下哪个不是软件测试的阶段?A. 单元测试B. 集成测试C. 系统测试D. 维护测试答案:D4. 软件测试中,测试用例的主要目的是:A. 验证软件功能B. 验证软件性能C. 验证软件安全性D. 所有选项答案:D5. 以下哪个不是软件测试的类型?A. 功能测试B. 性能测试C. 压力测试D. 需求测试答案:D二、多项选择题(每题3分,共15分)1. 软件测试过程中可能遇到的问题包括:A. 缺陷B. 错误C. 故障D. 风险答案:ABCD2. 软件测试的基本原则包括:A. 测试显示存在缺陷B. 测试不能证明不存在缺陷C. 穷尽测试是不可能的D. 早期测试答案:ABCD3. 软件测试的目的是:A. 验证软件符合需求B. 验证软件符合设计C. 验证软件符合实现D. 验证软件符合标准答案:ABD4. 以下哪些是软件测试的方法?A. 静态测试B. 动态测试C. 黑盒测试D. 白盒测试答案:ABCD5. 软件测试的文档通常包括:A. 测试计划B. 测试用例C. 测试报告D. 用户手册答案:ABC三、判断题(每题1分,共10分)1. 软件测试可以完全替代用户测试。

(错误)2. 软件测试的目的是发现尽可能多的缺陷。

(正确)3. 软件测试可以在软件开发过程的任何阶段进行。

(正确)4. 软件测试可以提高软件的可靠性。

(正确)5. 软件测试可以降低软件维护的成本。

(正确)6. 软件测试可以证明软件没有缺陷。

(错误)7. 软件测试只能发现软件中的错误。

(错误)8. 软件测试可以提高用户对软件的满意度。

(正确)9. 软件测试可以减少软件的缺陷。

软件测试题库

软件测试题库

软件测试题库一、单选题1. 软件测试的主要目的是:a) 出口产品和服务的可靠性和性能。

b) 确定软件中的错误和缺陷。

c) 验证软件是否满足业务需求。

d) 找出软件开发过程中的问题和风险。

2. 下面哪项不是软件测试的基本原则?a) 测试应该从早期开始。

b) 测试应该与需求分离。

c) 测试应该是全面的。

d) 测试应该是自动化的。

3. 下面哪项是软件测试的主要分类之一?a) 白盒测试b) 功能测试c) 性能测试d) 用户验收测试4. 黑盒测试主要关注于:a) 测试代码的执行流程。

b) 测试软件的功能是否满足需求。

c) 测试软件的性能和稳定性。

d) 测试软件的用户界面和易用性。

5. 下面哪项是软件测试的关键活动之一?a) 编写测试用例。

b) 测试环境的搭建。

c) 编写测试计划。

d) 编写测试报告。

二、多选题1. 下面哪些是软件测试的基本原则?(可多选)a) 测试应该早期开始。

b) 测试应该与需求分离。

c) 测试应该是全面的。

d) 测试应该是自动化的。

2. 下面哪些是软件测试的主要分类?(可多选)a) 白盒测试b) 功能测试c) 性能测试d) 用户验收测试3. 下面哪些是软件测试的关键活动?(可多选)a) 编写测试用例。

b) 测试环境的搭建。

c) 编写测试计划。

d) 编写测试报告。

三、判断题1. 软件测试的主要目的是验证软件是否满足业务需求。

()2. 测试计划是软件测试的关键活动之一。

()3. 白盒测试关注代码的执行流程。

()四、简答题1. 请简要描述软件测试的基本原则。

2. 请简要描述功能测试和性能测试的区别。

3. 软件测试的主要活动有哪些?请简要介绍每个活动的重要性。

五、应用题1. 请从一个实际项目中选择一个功能进行测试设计,并编写相应的测试用例。

以上为软件测试题库,供学生进行练习和考试使用。

测试题库中包含了单选题、多选题、判断题和简答题,有助于学生全面了解软件测试的基本知识和技能要求。

希望同学们认真对待,做好准备,提高软件测试能力。

软件测试期末考试试题及答案

软件测试期末考试试题及答案

软件测试期末考试试题及答案软件测试期末考试试题及答案一、选择题1、软件测试的目的是()。

A. 发现尽可能多的缺陷 B. 改进软件产品的质量 C. 提高软件产品的可靠性 D. 确认软件产品的功能和性能答案:A2、下面()方法属于黑盒测试。

A. 语句覆盖 B. 判定覆盖 C. 条件覆盖 D. 边界值分析答案:D3、下列缺陷中,属于可修复缺陷的是()。

A. 需求不清晰 B. 缺乏文档 C. 程序崩溃 D. 界面设计不合理答案:C4、软件测试按照()可分为单元测试、集成测试、系统测试和验收测试。

A. 测试技术 B. 测试方法 C. 测试阶段 D. 测试工具答案:C5、软件缺陷报告需要记录的属性不包括()。

A. 缺陷编号 B. 缺陷状态 C. 测试用例 D. 缺陷严重程度答案:C6、下列软件缺陷修复的成本中,属于低成本的是()。

A. 分析缺陷原因 B. 设计新功能来避免缺陷 C. 重写程序来修复缺陷 D. 使用工具辅助修复缺陷答案:D7、下列()是有效的软件测试原则。

A. 软件测试是软件开发过程的重要组成部分 B. 软件测试的目的是证明软件存在的缺陷 C. 软件测试是软件开发阶段的最后一个环节 D. 软件测试的本质是发现软件中存在的缺陷答案:D8、下列()工具属于性能测试工具。

A. JUnit B. LoadRunner C. QTP D. JIRA 答案:B9、在软件测试中,下列说法正确的是()。

A. 软件中不存在缺陷时,无需进行测试 B. 软件未通过测试时,不能发布上线 C. 软件测试是软件开发过程中最关键的一步 D. 软件测试是为了证明软件存在的缺陷答案:B10、在软件测试中,下列说法错误的是()。

A. 等价类划分法属于黑盒测试方法 B. 边界值分析法属于白盒测试方法 C. 在进行等价类划分时,至少应分为有效和无效两个等价类 D. 在使用边界值分析法时,至少应选择上界和下界两个边界值进行分析答案:B二、填空题1、软件测试按照()可分为白盒测试、黑盒测试和灰盒测试。

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

Homework1:第5章:边界值测试1.加法器程序计算两个1~100之间的整数的和。

设计加法器边界值测试用例集合。

解:加法器测试用例增加如下几条(1)弱健壮性等价测试类:A=0 B=10 C=ERRORA=1 B=10 C=11A=2 B=10 C=12A=10 B=0 C=ERRORA=10 B=1 C=11A=10 B=2 C=12A=99 B=10 C=109A=100 B=10 C=110A=101 B=10 C=ERRORA=10 B=99 C=109A=10 B=100 C=110A=10 B=101 C=ERROR(2)是否需要考虑以下情形?虑到小数,非字符等其它情况测试用例还要增加以下几种情形:A=3.1 B=5.6 C=ERRORA=A B=B C=ERRORA=@ B=# C=ERRORA=空格B=空格C=ERRORA= B= C=ERROR解:Homework2:第6章:等价类测试1.保险公司人寿保险保费计算程序的等价类测试某保险公司人寿保险的保费计算方式为:保费 = 投保额×保险费率其中,保险费率根据年龄、性别、婚姻状况和抚养人数的不同而有所不同,体现在不同年龄、性别、婚姻状况和抚养人数,点数设定不同。

10点以上保险费率为0.6%,10点及10点以下保险费率为0.1%;而点数又是由投保人的年龄、性别、婚姻状况和抚养人数来决定的,具体规则如下所示:保险公司计算保费费率的规则假设投保额是1万元,找出保险公司人寿保险保费计算程序的等价类测试用例。

对程序中各个输入条件的要求如下:年龄是一位或两位非零整数,值的有效范围为1~99;性别是一位英文字符,有效取值只能为…M‟(表示男性)或‟F‟(表示女性);婚姻的有效取值只能为…已婚‟或…未婚‟;抚养人数的有效取值可以是空白或一位非零整数(1~9)。

(1)分析程序的规格说明,列出等价类表(包括有效等价类和无效等价类)。

(2)根据(1)中的等价类表,设计能覆盖所有等价类的测试用例的输入数据和预期输出。

解:(1)(2)Homework3:第7章:等价类测试一个处理单价为5元钱的饮料自动售货机软件测试用例的设计。

规格说明如下:若投入5元钱或10元钱,按下“橙汁”或“啤酒”的按钮,则相应的饮料就送出来。

若售货机没有零钱找,则一个显示“零钱找完”的红灯亮,这时在投入10元钱并按下按钮后,饮料不送出来而且10元钱也退出来;若有零钱找,则显示“零钱找完”的红灯灭,在送出饮料的同时退还5元钱。

构造因果图分析规格说明,用决策表设计测试用例。

解:1)分析这一段说明,列出原因和结果原因:1.售货机有零钱找2.投入1元硬币3.投入5角硬币4.押下橙汁按钮5.押下啤酒按钮结果:21.售货机〖零钱找完〗灯亮22.退还1元硬币23.退还5角硬币24.送出橙汁饮料25.送出啤酒饮料2)画出因果图,如图3-11所示。

所有原因结点列在左边,所有结果结点列在右边。

建立中间结点,表示处理的中间状态。

中间结点:11. 投入1元硬币且押下饮料按钮12. 押下〖橙汁〗或〖啤酒〗的按钮13. 应当找5角零钱并且售货机有零钱找14. 钱已付清图3-11: 售货机因果图3)转换成判定表:4)在判定表中,阴影部分表示因违反约束条件的不可能出现的情况,删去。

第16列与第32列因什么动作也没做,也删去。

最后可根据剩下的16列作为确定测试用例的依据。

Homework4:第9章:路径测试(测试覆盖指标)1.练习一:求解一元二次方程程序如下:main(){float a,b,c,x1,x2,mid;scanf(“%f,%f,%f”,&a,&b,&c);if(a!=0){mid=b*b-4*a*c;if(mid>0){x1=(-b+sqrt(mid))/(2*a);x2=(-b-sqrt(mid))/(2*a);print f(“two real roots\n”);}else{ if(mid==0){x1=-b/2*a;printf(“one real root\n”);}else{x1=-b/(2*a);x2=sqrt(-mid)/(2*a);printf(“two complex roots\n”); }}printf(“x1=%f,x2=%f\n” , x1,x2);}}1、用语句覆盖准则对该程序设计测试用例;2、用分支覆盖准则对该程序设计测试用例;解:1.语句覆盖由控制图可以很容易看到,可以只选3组(所有的点必须覆盖):第1组:2,5,3,执行顺序为:1,2,3,4,5,10,11,12,13第2组:1,2,1执行顺序为:1,2,3,4,5,6,8,9,11,12,13第3组:4,2,1执行顺序为:1,2,3,4,5,6,7,9,11,12,132.分支覆盖由控制图可以很容易看到,可以只选4组(所有的边必须覆盖):第1组:2,5,3(a!=0,mid>0),执行顺序为:1,2,3,4,5,10,11,12,13第2组:1,2,1 (a!=0,mid=0),执行顺序为:1,2,3,4,5,6,8,9,11,12,13第3组:4,2,1 (a!=0,mid<0),执行顺序为:1,2,3,4,5,6,7,9,11,12,13第4组:0,2,1 (a=0)执行顺序为:1,2,3,13练习二:程序如下:main(){ int i,j,k,match;scanf(“%d%d%d,&i,&j,&k);if(i<=0‖j<=0‖k<=0‖i+j<=k‖i+k<=j‖j+k<=i) match=4;else if(i==j&&i==k&&j==k) match=1;else if(i==j‖i==k‖j==k) match=2;else match=3;printf(“match=%d\n”,match);}用条件覆盖准则对该程序设计测试用例;用分支-条件覆盖准则对该程序设计测试用例;用组合覆盖准则对该程序设计测试用例;解:分析:三组判定:(1)条件覆盖:第一组:if(a<=0||b<=0||c<=0||a+b<=c||b+c<=a||c+a<=b)有6个条件第二组:if(a==b && b==c && c==a) 有3个条件第三组:if(a==b||b==c||c==a) 有3个条件实际上只有9个条件(a<=0 b<=0 c<=0 a+b<=c b+c<=a c+a<=b)a==b b==c c==a 0 0 0 T T T T T T T T T 2 3 4 F F F F F F F F F 这样,2组测试用例,使得每个条件,至少各有一次“真”和“假”。

(2)分支-条件覆盖:根据流程图,有4条分支:测试用例为:0 0 0 match=12 3 4 match=31 1 1 match=42 23 match=2(3)条件组合覆盖:Homework5:第9章(基路径测试)1.函数说明:当i_flag=0;返回 i_count+100当i_flag=1;返回 i_count *10否则返回 i_count *20输入参数:int i_count ,int i_flag输出参数:int i_return;代码:1int Test(int i_count, int i_flag)2 {3int i_temp = 0;4while (i_count>0)5 {6if (0 == i_flag)7 {8 i_temp = i_count + 100;9break;10 }11else12 {13if (1 == i_flag)14 {15 i_temp = i_temp + 10;16 }17else18 {19 i_temp = i_temp + 20;20 }21 }22 i_count--;23 }24return i_temp;25 }用基路径测试方法,画出DD路径图,计算圈复杂度,并列出基路径,设计对应的测试用例。

解:(1)基本路径测试步骤:1.导出程序流程图的拓扑结构—控制流图G2.计算控制流图G的环路复杂度V(G)环路复杂度是一种为程序逻辑复杂性提供定量测试的软件度量。

将该度量用于计算程序的基本独立路径数目。

为确保所有语句至少执行一次的测试数量的上界。

简单的定义就是控制流图的区域数目3.确定只包含独立路径的基本路径集4.设计测试用例(2)控制流图(3)计算流图G的环路复杂度V(G)有三种方法计算环路复杂度:1>V(G)= 区域个数=42>V(G)=E-N+2,E是流图中边的数量,N是流图中结点的数量。

V(G)=10-8+2=43>V(G)= P+1 ,P是流图G中判定结点的数量V(G)=3+1=4(4)基本路径:1 B(4,24)2 C,E,J(4,6,8,24)3 C,D,F,H,A,B(4,6,13,15,22,4,24)4 C,D,G,I,A,B(4,6,13,19,22,4,24)(5)测试用例:1 B(4,24)输入数据:i_flag=0,或者是i_flag<0的某一个值。

预期结果:i_temp=0.2 C,E,J(4,6,8,24)输入数据:i_count =1;i_flag=0预期结果:i_temp=101.3 C,D,F,H,A,B(4,6,13,15,22,4,24)输入数据:i_count =1;i_flag=1预期结果:i_temp=10.4 C,D,G,I,A,B(4,6,13,19,22,4,24)输入数据:i_count =1;i_flag=2预期结果:i_temp=20.。

相关文档
最新文档