软件测试期末考试含答案
《软件测试基础》期末试卷及参考答案
![《软件测试基础》期末试卷及参考答案](https://img.taocdn.com/s3/m/74a117010a4e767f5acfa1c7aa00b52acec79c55.png)
1、判定覆盖设计足够多的测试用例,使得被测试程序中的每个判断的“真”、“假”分支_至少被执行一次。
2、黑盒测试的具体技术方法 ____________、 __________、 __________、____________。
等价类划分法,边界值分析法,决策表法,因果图法3、黑盒测试又称之为___________测试。
功能4、等价类划分有两种不同的情况:____________和____________。
有效等价类,无效等价类5、根据覆盖目标的不同,逻辑覆盖又可分为:________________,_____________,_______________,__________________,条件组合覆盖,判断/条件覆盖。
语句覆盖,判定覆盖,条件覆盖,路径覆盖6、根据软件生命周期中的定义,可以把自动化测试工具划分3大类____________,____________和____________。
白盒测试工具、黑盒测试工具、测试管理工具7、软件测试是为发现程序中的______________而执行程序的______________。
错误,过程8、测试用例是由______________和预期的______________两部分组成。
测试输入数据,输出数据9、白盒测试又称为______________,可以分为______________和______________两大类。
结构测试,静态测试,动态测试10、软件是包括____________﹑____________﹑____________的完整集合。
程序,数据,相关文档11、边界值分析法属于____________。
黑盒测试12、单元测试是以____________说明书为指导,测试源程序代码。
详细设计13、集成测试以____________说明书指导,测试软件结构。
概要设计14、确认测试以____________说明书为指导。
需求分析15、软件开发的基本过程____________,_____________,_______________,_____________,_____________,______________。
2020-2021大学《软件测试》期末课程考试试卷A(含答案)
![2020-2021大学《软件测试》期末课程考试试卷A(含答案)](https://img.taocdn.com/s3/m/570eb455d0d233d4b04e6972.png)
2020-2021《软件测试》期末课程考试试卷A适用专业:考试日期:闭卷所需时间:120分钟总分:100分一、填空题(每空1分, 共15空,总共15分):1、方法是借助往被测程序中的插入操作来实现测试目的的方法,即向源程序中添加一些语句,实现对程序语句的执行、变量的变化等情况进行检查。
2、描述所有要完成的测试工作,包括被测试项目的背景、目标、范围、方式、资源、进度安排、测试组织,以及与测试有关的风险等方面。
3、条件判定组合覆盖的含义是:设计足够的,使得判定中每个条件的所有可能(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次。
4、程序变异方法是一种驱动测试,该方法是针对某类特定程序错误的。
5、强度测试是验证软件的性能在各种的周边环境和系统条件下是否能正常工作,这里所谓“强度”包括了两项:一项是测试,另一项是测试。
6、是检验软件产品的最后一道工序,与前面各种测试过程的不同之处主要在于它突出了的作用,同时软件开发人员也要参与。
7、在进行单元测试时,需设置若干辅助测试模块。
辅助模块有两种,一种是模块,用以模拟被测试模块的上级模块。
另一种是模块(Sub),用以代替拟被测模块工作过程中所调用的模块。
8、集成测试的实施方案有很多种,如:非增式集成测试和增量式集成测试、三明治集成测试、核心集成测试、分层集成测试、基于使用的集成测试等。
其中,常用的是集成测试和集成测试两种模式。
9、测试项目管理就是以测试项目为管理对象,通过一个性的专门的测试组织,运用专门的软件测试知识、技能、工具和方法,对测试项目进行计划、组织、执行和控制,并在时间成本、软件测试质量等方面进行分析和管理活动。
10、整个测试过程分、集成测试、系统测试以及验收测试四个阶段进行。
二、判断题(每题1分,共15分,正确的√,错误的╳)(1)测试是为了验证软件已正确地实现了用户的要求。
()(2)白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求。
软件测试期末试题B卷及答案最终版q
![软件测试期末试题B卷及答案最终版q](https://img.taocdn.com/s3/m/e180167bb4daa58da0114af2.png)
A.DD-路径图 C.MM-路径图
B. 控制流图 D. 模块调用图
第 2 页 共 9页
18、自底向上增量式集成测试中,下面( c )描述是正确的。
A.测试由桩模块控制
B.最上面的模块最先测试
C.父单元用测试过的子单元测试
D.包含树的深度优先或广度优先遍历过程
19、测试后程序中残存的错误数目与该程序中已发现的错误数目成( d )。
题号 11 12 13 14 15 16 17 18 19 20
答案 √ √ √ √ √ √ × √ × √
三、简答题(4×5=20 分)
1.答:具有探索精神、具有良好的计算机编程基础、故障排除能手、坚持不懈的精神、具有创新 精神和超前意识、追求完美、判断准确、具有整体观念,对细节敏感、团队合作精神,沟通能力。
A. 避免软件开发中出现的错误
B. 发现软件开发中出现的错误 C. 尽可能发现并排除软件中潜藏的错误,提高软件的可靠性
D. 修改软件中出现的错误 2、软件测试是采用( a )执行软件的活动。
A.测试用例 B.输入数据
C.测试环境 D.输入条件 3、导致软件缺陷的最大原因是:(
a)
A.软件需求说明书 B.设计方案
➢ 测试用例输入为:{ x=4、y=5、z=5 } 四、综合题(每题 10 分,共计 20 分)
1、画出控制流图: 如右图所示
第 7 页 共 9页
计算环形复杂度:
10(条边)- 7(个节点)+ 2 = 5 导出独立路径(用语句编号表示)
4
X = X+1;
5}
由于控制流图假设的是单条件,因此对于复合条件,可将其分解为多个单个条件,并映射成控制 流图。
1: A>1;2: B=0 ;3: X = X/A ;4: A=2 ;5:X>1 ;6: X = X+1;7: }
《软件测试基础》期末A卷及参考答案
![《软件测试基础》期末A卷及参考答案](https://img.taocdn.com/s3/m/0e5730cfa300a6c30d229f17.png)
成都东软信息技术学院 期末试题软件测试基础(A 卷)说明:本试卷共六大题,试卷满分 100分,考试时间120分钟。
一、单项选择题:共 20小题,每小题1分,满分20分;请将答案填入题后括号中。
(说明:每题有且仅有一个正确答案)1. 在软件生命周期的哪一个阶段,软件缺陷修复费用最低(D )产品发布(B )设计 编码 2. 单元测试中用来模拟被测模块调用者的模块是(A) 父模块 (B )子模块 (D )桩模块3. 为了提高测试的效率,应该(A )随机地选取测试数据;(B )取一切可能的输入数据作为测试数据; (C) 在完成编码以后制定软件的测试计划; 4. 侧重于观察资源耗尽情况下的软件表现的系统测试被称为(A )强度测试 5. (C)容量测试(D )性能测试必须要求用户参与的测试阶段是(A) 单元测试 (B )集成测试 (C)确认测试6. 软件测试员究竟做些什么。
(A) 软件测试员的目的是发现软件缺陷(B) 软件测试员的目的是发现软件缺陷,尽可能早一些(C) 软件测试员的目的是发现软件缺陷,尽可能早一些,并确保其得以修复 (D) 软件测试员的目的是发现软件缺陷,尽可能早一些,并将其得以修复(A) 因果图法是建立在决策表法基础上的一种白盒测试方法; (B) 等价类划分法是边界值分析法的基础;(C 健壮性等价类测试的测试用例要求在有效等价类中取值; (D )在任何情况下做黑盒测试皆应首先考虑使用错误推断法。
(B) 局部数据结构测试8. 不属于单元测试内容的是 9. 划分软件测试属于白盒测试还是黑盒测试的依据是(A )是否执行程序代码 (B )是否能看到软件设计文档(D )运行结果是否确定10.下列项目中不属于测试文档的是(A )测试计划 (B )测试用例(D )测试报告11.几乎没有产品计划、进度安排和正规的开发过程的软件开发模式是 (A )大棒模式(C)瀑布模式 (D )快速原型开发模式 12.如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的(B )条件覆盖 (C)判定/条件覆盖 (D )组合覆盖13.下列说法不正确的是 (A )测试不能证明软件的正确性; (B )测试员需要良好的沟通技巧;7. F 面四种说法中正确的是(A )模块接口测试(C)路径测试(C) QA 与testing 属于一个层次的概念;14. 对Web 网站进行的测试中,属于功能测试的是(A )连接速度测试 (C) 平台测试15. 在进行单元测试时,常用的方法是(A) 采用黑盒测试,辅之以白盒测试; (C) 只使用黑盒测试; (D) 只使用白盒测试。
《软件测试》期末复习试题及答案
![《软件测试》期末复习试题及答案](https://img.taocdn.com/s3/m/cd57da7032687e21af45b307e87101f69e31fb1e.png)
《软件测试》期末复习试题及答案阶段测试一一. 单选题(共16题,65.6分)1. (单选题)(D )不是正确的软件测试目的。
A. 尽最大的可能找出最多的错误B. 设计一个好的测试用例对用户需求的覆盖度达到100%C. 对软件质量进行度量和评估,以提高软件的质量D. 发现开发所采用的软件过程的缺陷,进行软件过程改进2. (单选题)下面说法正确的是(C)。
A. 经过测试没有发现错误,说明程序正确B. 测试的目标是证明程序没有错误C. 成功的测试是发现了迄今尚未发现的错误的测试D. 成功的测试是没有发现错误的测试3. (单选题)下列选项中,不属于软件测试工程师职责范围的是(C)。
A. 测试方案设计B. 测试用例设计C. 进行代码调优D. 测试实施4. (单选题)下面属于软件测试模型的是(A)A. W模型B. 瀑布模型C. L模型D. G模型5. (单选题)下面关于软件测试模型的描述中,不正确的是(A)。
①V模型的软件测试策略既包括低层测试,又包括高层测试,高层测试是为了确保源码的正确性,低层测试是为了使整个系统满足用户的需求②V模型存在一定的局限性,它仅仅将测试过程作为在需求分析、概要设计、详细设计及编码之后的一个阶段③W模型可以说是V模型自然而然的发展,它强调:测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、功能和设计同样要测试④H模型中,软件测试是一个独立的流程,贯穿产品的整个生命周期,与其他流程并发地进行⑤H模型中,测试准备和测试实施紧密结合,有利于资源调配A. ①⑤B. ②④C. ③④6. (单选题)下列关于W模型的描述中正确的是(A)A. W模型强调测试伴随着整个软件开发周期,测试对象不仅仅是程序,需求、功能和文档同样需要测试B. 所有开发活动完成后,才可执行测试C. W模型将软件的开发视为合同签订、需求、设计、编码等一系列串行活动D. 在W模型中,需求、设计、编码串行进行,也可以并行工作7. (单选题)V模型描述了软件基本的开发过程和测试行为,描述了不同测试阶段与开发过程各段的对应关系。
《软件测试》期末试卷(含答案).docx
![《软件测试》期末试卷(含答案).docx](https://img.taocdn.com/s3/m/e861988f8662caaedd3383c4bb4cf7ec4afeb6a2.png)
《软件测试》试卷一、判断题(每题1分,共12分,正确的",错误的X)1.软件需求是度量软件质量的基础。
不符合需求的软件就不具备质量。
(T)2.全面质量管理的定义是:一个组织以质量为中心,以全员参与为基础,目的在于通过让顾客满意和本组织所有成员及社会受益而达到长期成功的管理途径。
(T)3.发现错误是软件测试的唯一目的。
(F)4.白盒测试可以找出软件遗漏功能和代码错误问题。
(F)5.软件的质量有测试组决定。
(F)6.在设计测试用例时,应包括合理的输入条件和不合理的输入条件。
(T)7.测试从不可知内部条件开始,结果是不可预见的。
(F)8.软件缺陷一定是由编码所引起的.。
(F)9.软件测试等于程序测试。
(F)10.Beta测试是软件的多个用户在实际使用环境下进行的测试。
(T)11.经验表明,测试后程序残存的错误数目与该程序中以发现的错误数目或检错率成正比。
(T)12.验收测试比较适合采用软件自动化测试工具进行测试。
(F)二、单项选择题(每题2分,共12分)1.某次程序调试没有出现预计的结果,下列(B )不可能是导致出错的原因。
A.变量没有初始化B.编写的语句书写格式不规范C.循环控制出错D.代码输入有误2.软件测试是软件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?(B)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.路径覆盖三、问答题(每题9分,共54分)1.什么是软件质量?请写出IS0/IEC9126中如何评价和度量软件质量的。
期末题库-软件测试答案
![期末题库-软件测试答案](https://img.taocdn.com/s3/m/5b080b22f121dd36a32d82cf.png)
选择题10×2分1、软件是程序和(A)的集合。
A、文档B、代码C、测试用例D、测试2、软件工程中描述生存周期的瀑布模型一般包括计划、(A)、设计、编码、测试、维护等几个阶段。
A、需求分析B、需求调查C、可行性分析D、问题定义3、严重的软件缺陷的产生主要源自(A)。
A、需求B、设计C、编码D、测试4、以下不属于应用系统中的缺陷类型的是:(B)A、不恰当的需求解释B、用户指定的错误需求C、设计人员的习惯不好D、不正确的程序规格说明5、降低缺陷费用最有效的方法是(B)。
A、测试尽可能全面B、尽可能早的开始测试C、测试尽可能深入D、让用户进行测试6、测试环境中不包括的内容是(A)A、测试所需文档资料B、测试所需硬件环境C、测试所需软件环境D、测试所需网络环境7、软件调试的目的是(B)A、发现软件中隐藏的错误B、解决测试中发现的错误C、尽量不发现错误以便早日提交软件D、证明软件的正确性8、软件测试的目的是(A)难易度:2A、发现软件中隐藏的错误B、解决软件中隐藏的错误C、尽量不发现错误以便早日提交软件D、证明软件的正确性9、下列关于测试和调试的说法中正确的是(B)A、测试和调试没有本质区别。
目的都是为了发现软件系统中的错误。
B、测试是测试人员的职责,在整个测试活动中可以不需要开发人员的参与。
C、调试主要在软件的开发阶段进行。
D、调试一般不能确定程序中潜在错误发生的原因10、从测试的要求来讲,如果想让测试完成的效果更好,测试部门与开发部门的关系最好是下面四种中的(D)。
难易度:3A、测试组织与开发组织为同一公司同一部门同一小组,并且测试人员与开发人员为同一组人员,即开发人员测试自己的程序。
B、测试组织与开发组织为同一公司同一部门同一小组,但测试人员与开发人员为不同人员。
C、测试组织与开发组织为同一公司,但不在同一部门。
D、测试组织与开发组织为不同公司。
11、某软件公司在招聘软件测试工程师时,应聘者甲向公司做如下保证:(1)经过自己测试的软件今后不会再出现问题(2)在工作中对所有程序员一视同仁,不会因为某个程序编写的程序发现的问题多,就重点审查该程序,以免不利于团结(3)承诺不需要其他人员,自己就可以独立进行测试工作(4)发扬咬定青山不放松的精神,不把所有问题都找出来,绝不罢休根据自己所学的软件测试知识,应聘者甲的保证(D)难易度:3A、(1)(4)是正确的B、(2)是正确的C、都是正确的D、都是错误的12、用不同的方法可将软件测试分为白盒法和黑盒法,或者(C)和静态测试。
软件测试试题及答案答案
![软件测试试题及答案答案](https://img.taocdn.com/s3/m/406af468f68a6529647d27284b73f242336c31a5.png)
软件测试试题及答案答案一、单项选择题(每题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. 软件测试可以减少软件的缺陷。
软件测试期末考试试题及答案
![软件测试期末考试试题及答案](https://img.taocdn.com/s3/m/aaa45d1ba4e9856a561252d380eb6294dd882286.png)
软件测试期末考试试题及答案软件测试期末考试试题及答案一、选择题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、软件测试按照()可分为白盒测试、黑盒测试和灰盒测试。
软件测试期末试题及答案
![软件测试期末试题及答案](https://img.taocdn.com/s3/m/42de72b3bb0d4a7302768e9951e79b8968026824.png)
软件测试期末试题及答案一、选择题1. 在测试过程中,辨识风险涉及哪些方面?A. 标识出可能带来影响的风险B. 评估风险的严重程度C. 确定风险发生的概率D. 制定相应的风险应对计划E. 执行风险应对计划答案:ABCDE2. 软件测试的目的是什么?A. 发现软件中的缺陷B. 评估软件的质量C. 确保软件符合需求D. 提供关于软件的信息E. 推断软件在特定条件下的行为答案:ABCDE3. 在软件测试中,白盒测试主要关注以下哪些方面?A. 程序的结构B. 代码的逻辑C. 程序的控制流程D. 程序的变量E. 程序的输入和输出答案:ABCDE4. 风险管理的过程包括以下哪些步骤?A. 风险辨识B. 风险评估C. 风险规划D. 风险监控E. 风险应对答案:ABCDE5. 下列哪项不属于黑盒测试方法?A. 等价类划分法B. 边界值分析法C. 控制流分析法D. 正交实验设计法E. 错误推测法答案:C二、填空题1. 软件测试的基本原则是________ 。
答案:尽早开始。
2. 在测试计划中,应该包含测试的________ 。
答案:范围、策略和进度。
3. 执行测试用例的目的是________ 。
答案:发现软件中的缺陷。
4. 白盒测试主要关注软件的________ 。
答案:结构和逻辑。
5. 黑盒测试方法之一的等价类划分法的核心思想是________ 。
答案:将输入域分为等价类,选择代表性的测试用例。
三、简答题1. 请简要描述一下软件测试的步骤。
答案:软件测试的步骤包括需求分析、测试计划、测试设计、测试执行和测试评估。
需求分析阶段确定测试的目标和范围;测试计划阶段定义测试策略和计划;测试设计阶段制定测试用例和测试数据;测试执行阶段执行测试用例并记录测试结果;测试评估阶段对测试结果进行分析和评估。
2. 请简述一下白盒测试和黑盒测试的区别。
答案:白盒测试是基于程序内部结构的测试方法,主要关注程序的结构、逻辑和控制流程,通过检查程序的代码来执行测试。
软件测试期末考试试题及答案
![软件测试期末考试试题及答案](https://img.taocdn.com/s3/m/20e9bc8d5ef7ba0d4a733bd9.png)
一,判断1√2.×3.√4.×5.×6.×7.×8.×9.√10.×
二,选择
1.D
2.D
3.B
4.B
5.B
6.A
7.D
8.B
9.C10.A
三填空
1.测试计划、测试用例
2.稳定性测试、负载测试、压力测试
穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表
性。
边界值分析:对输入输出的边界值进行测试的一种黑盒测试方法。
决策表法:决策表是分析和表达多逻辑条件下执行不同操作的情况的工具
因果图分析法:是一种利用图解法分析输入的各种组合情况,从而设计测试用例
的方法,它适合于检查程序输入条件的各种组合情况。
错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误,从而有针对性的设计测试用例的方法。
4.列举常见的系统测试方法。
答出来5个即可。
(5分)
答:恢复测试
安全测试
强度测试
1.
2.。
软测期末考试题及答案
![软测期末考试题及答案](https://img.taocdn.com/s3/m/b224156311661ed9ad51f01dc281e53a5802510e.png)
软测期末考试题及答案一、选择题(每题2分,共20分)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. 测试用例应有明确的预期结果6. 在软件测试中,什么是回归测试?A. 测试软件的新功能B. 测试软件的稳定性C. 测试软件的安全性D. 重新测试软件的修改部分7. 以下哪个不是软件测试的阶段?A. 需求分析阶段B. 单元测试阶段C. 集成测试阶段D. 软件部署阶段8. 什么是缺陷生命周期?A. 缺陷的发现、报告、修复和验证的过程B. 缺陷的发现、修复和关闭的过程C. 缺陷的发现、报告和修复的过程D. 缺陷的发现、报告和关闭的过程9. 软件测试中的“测试驱动开发”(TDD)是指什么?A. 先编写测试用例,再开发代码B. 先开发代码,再编写测试用例C. 同时编写测试用例和开发代码D. 只编写测试用例,不开发代码10. 压力测试和负载测试的区别是什么?A. 压力测试是测试软件在极端条件下的表现B. 负载测试是测试软件在正常使用条件下的表现C. 压力测试是测试软件在正常使用条件下的表现D. 负载测试是测试软件在极端条件下的表现二、简答题(每题10分,共30分)1. 请简述软件测试的重要性。
2. 解释什么是自动化测试,并说明其优势。
3. 描述软件测试过程中的“测试计划”的作用。
软件测试技术期末考试题及答案
![软件测试技术期末考试题及答案](https://img.taocdn.com/s3/m/4bac64247ed5360cba1aa8114431b90d6c858932.png)
软件测试技术期末考试题及答案试题:软件测试技术期末考试题一、选择题(每题2分,共20分)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. 测试软件的性能...(此处省略其他选择题)二、简答题(每题10分,共30分)1. 请简述软件测试的生命周期。
2. 什么是集成测试?请列举集成测试的三种主要策略。
3. 描述系统测试与验收测试的区别。
三、论述题(每题25分,共50分)1. 论述软件测试中静态测试与动态测试的区别及其各自的优缺点。
2. 请结合实际案例,论述如何制定有效的软件测试计划。
答案:一、选择题1. C2. C3. C4. D5. A...(此处省略其他选择题答案)二、简答题1. 软件测试的生命周期包括需求分析、设计、实现、测试和维护等阶段。
在每个阶段,测试人员需要进行相应的测试活动,以确保软件产品的质量。
2. 集成测试是将模块按照某种策略组合在一起进行测试的过程。
三种主要策略包括自顶向下集成、自底向上集成和大爆炸集成。
3. 系统测试是测试团队对整个系统进行的测试,目的是验证系统作为一个整体是否满足需求规格说明。
验收测试则是用户对软件进行的测试,目的是验证软件是否满足用户的实际工作需求。
三、论述题1. 静态测试主要关注软件文档和代码的审查,不需要运行软件。
它的优点是成本较低,可以在早期发现问题;缺点是无法发现运行时的错误。
《软件测试技术》期末复习题及答案
![《软件测试技术》期末复习题及答案](https://img.taocdn.com/s3/m/4d94a774ae45b307e87101f69e3143323868f503.png)
《软件测试技术》期末复习题及答案软件测试的目的和意义何在?目的:检验系统是否满足规定需求,或弄清实际结果与预期结果之间的差别,即验证和确认软件质量。
1、软件测试的定义。
IEEE定义:测试人员采用合适的测试方法,使用人工或自动手段来检查、分析或运行某个系统(软件)的过程,其目的在于检验系统是否满足规定需求,或弄清实际结果与预期结果之间的差别。
2、软件测试有哪些原则?基本原则:所有测试的标准都是建立在用户需求之上。
软件测试必须基于“质量第一”的思想去开展各项工作。
事先定义好产品的质量标准。
软件项目一旦启动,软件测试也就开始,而不是等程序写完,才开始进行测试。
穷举测试是不可能的。
第三方进行测试会更客观、更有效。
软件测试计划是做好软件测试工作的前提。
要设计合理的测试用例。
对发现错误较多的程序段,应进行更深入的测试。
重视文档,要善于保存一切测试过程文档。
3、什么是软件缺陷(Bug)?简述错误、缺陷、故障之间的关系。
软件缺陷:缺陷通常表现为软件功能上的失败、功能和实际需求的不一致,即矛盾。
IEEE定义:从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题。
从外部看,软件缺陷是系统所需要实现的某种功能的失效或与用户需求的违背。
关系:缺陷是错误在软件中体现出来的结果。
错误是潜伏在软件中的问题,如果永远不执行它们就不会出现缺陷。
当缺陷被引发时,它可能造成故障(失效)。
故障是缺陷的表现形式,是软件的运行结果相对于软件预期行为的一种偏离。
4 、Bug 的来源有哪些?一方面:来自开发人员的经验不足(生疏)来自程序员的疏忽大意、掉以轻心开发人员的不良心理拙劣的项目管理4、缺陷分为哪四级?有哪些不同的状态?四级缺陷:致命的(fatal)——非常严重的缺陷:致命的错误,造成系统或应用程序崩溃、死机、系统悬挂,或造成数据丢失、主要功能组完全丧失等。
2. 严重的(critical)——较严重的缺陷:严重错误,指主要功能或特性没有实现,导致严重问题的错误声明。
软件测试期末试题A卷及答案最终版
![软件测试期末试题A卷及答案最终版](https://img.taocdn.com/s3/m/0caf1227ec3a87c24128c440.png)
电子科技大学二零零八至二零零八学年第二学期软件测试技术(A卷)课程考试题(120分钟)闭卷考试时间:2008说明:本试卷共四大题,试卷满分100分。
注意:请将所有答案填写在最后一页答题卡上。
一、单项选择题:共20小题,每小题2分,满分40分。
1 •软件测试按照测试层次可以分为( c )A •黑盒测试、白盒测试B. 功能性测试和结构性测试C. 单元测试、集成测试和系统测试D. 动态测试和静态测试2、软件测试是采用( a )执行软件的活动。
A •测试用例B •输入数据C.测试环境D •输入条件3 •软件测试是软件开发过程的重要阶段,是软件质量保证的重要手段,下列哪个(些)是软件测试的任务?答案:(d )1预防软件发生错误2发现程序错误3提供诊断错误信息A .只有1B .只有2C.只有3D .都是4 、导致软件缺陷的最大原因是:(a )A .软件需求说明书B.设计方案C .编码D .维护5 、测试用例是为达到最佳的测试效果或高效的揭露隐藏的错误而精心设计的少量测试数据,至少应该包括( a )A、测试输入、执行条件和预期的结果。
B、测试目标、测试工具C、测试环境 D 、测试配置6 、对已经发现的错误进行错误定位和确定出错性质,并改正这些错误,同时修改相关的文档,这种行为属于( b )A .测试B.调试C.回归测试 D .单元测试7、软件缺陷修复的代价最高的阶段为(a)A、发布阶段B、需求阶段C、设计阶段 D 、编码阶段8 、下列(b )是关于软件缺陷的描述。
A .导致软件包含故障的人的行为B •产品的异常情况C.引起一个功能部件不能完成所要求的功能的一种意外情况-可编辑修改-D .功能部件执行其规定功能的能力丧失9、可作为测试停止的标准是( d )A .当时间用光时B .执行了所有的测试用例,但没有发现故障C.当所有缺陷都已经清除时D •当达到所要求的覆盖时10、下列描述错误的是( a )A •软件发布后如果发现质量问题,那是软件测试人员的错B •穷尽测试实际上在一般情况下是不可行的C.软件测试自动化不是万能的D •测试能由非开发人员进行,调试必须由开发人员进行。
软件测试期末试题及答案史上最全
![软件测试期末试题及答案史上最全](https://img.taocdn.com/s3/m/f566cbbebb0d4a7302768e9951e79b8968026883.png)
软件测试期末试题及答案史上最全一、选择题1. 在软件测试过程中,下列哪个不是测试的目的?A. 发现软件中的错误B. 确保软件符合用户需求C. 提高软件性能和稳定性D. 验证软件的功能和业务逻辑答案:C2. 在软件开发生命周期中,以下哪个阶段通常不包括测试活动?A. 需求分析阶段B. 设计阶段C. 编码阶段D. 接收测试阶段答案:A3. 在软件测试中,以下哪个属于黑盒测试方法?A. 语句覆盖B. 判定覆盖C. 边界值分析D. 决策表测试答案:C4. 下列哪个是软件测试的基本原则?A. 提前测试B. 百分百覆盖C. 稳定性优先D. 单元测试优先答案: A5. 下列哪个不属于软件测试的层次?A. 单元测试B. 集成测试C. 系统测试D. 用户验收测试答案:D二、填空题1. 在软件测试中,________是指一个测试用例覆盖的系统执行路径。
答案:代码覆盖2. 在缺陷管理过程中,________是指对缺陷进行处理,包括记录、跟踪和解决。
答案:缺陷跟踪3. 软件测试是通过运行实际测试用例来检查软件的________是否符合期望结果。
答案:行为4. 对于给定的软件系统,测试周期长度应由________来确定。
答案:风险5. 在测试计划中,应明确规定测试的________和________。
答案:范围;目标三、简答题1. 请简要说明什么是单元测试,并提供一个例子。
答:单元测试是对软件中最小可测试单元(通常是一个函数或模块)进行的测试。
它的目的是验证单元功能的正确性和稳定性。
例如,对于一个简单的计算器应用,可以对加法功能编写单元测试用例,输入两个数字进行相加,并验证输出结果是否正确。
2. 集成测试是什么?请举例说明。
答:集成测试是将已经经过单元测试的模块组合起来进行测试的过程。
它的目的是在集成环境中验证模块之间的交互是否正确。
例如,在一个电商网站的集成测试中,可以验证用户登录页面和购物车模块之间的数据传递是否正常,以及用户添加商品到购物车后是否能正确显示。
《软件测试基础》期末C卷及参考答案
![《软件测试基础》期末C卷及参考答案](https://img.taocdn.com/s3/m/c9de5fec856a561252d36ffa.png)
一、不定项选择题(每题2 分,共20分)请将答案填入题后括号中。
abcd 1.软件验收测试的合格通过准则是:(ABCD)A. 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。
B. 所有测试项没有残余一级、二级和三级错误。
C. 立项审批表、需求分析文档、设计文档和编码实现一致。
D. 验收测试工件齐全。
abcd2.软件测试计划评审会需要哪些人员参加?( ABCD)A.项目经理B.SQA 负责人C.配置负责人D.测试组da 3.下列关于alpha 测试的描述中正确的是:(AD)A.alpha 测试需要用户代表参加B.alpha 测试不需要用户代表参加C.alpha 测试是系统测试的一种D.alpha 测试是验收测试的一种bc 4.测试设计员的职责有:(BC)A.制定测试计划B.设计测试用例C.设计测试过程、脚本D.评估测试活动c d 5.下面哪些属于动态分析(CD)A. 代码覆盖率B. 模块功能检查C. 系统压力测试D. 程序数据流分析abc 6.下面哪些属于静态分析(ABC )A、代码规则检查B、程序结构分析C、程序复杂度分析D、内存泄漏abc 7.软件实施活动的进入准则是(ABC)A、需求工件已经被基线化B、详细设计工件已经被基线化C、构架工件已经被基线化D、项目阶段成果已经被基线化d8.不属于单元测试内容的是(D)(A)模块接口测试(B)局部数据结构测试(C) 路径测试(D)用户界面测试abcd9.软件测试设计活动主要有(ABCD)A、工作量分析B、确定并说明测试用例C、确立并结构化测试过程D、复审并评估测试覆盖d10.不属于集成测试步骤的是(D)A、制定集成计划B、执行集成测试C、记录集成测试结果D、回归测试二、填空题:共3小题10个空格,每个空格2分,满分20分;请将答案填入指定的空白处。
1.通过画因果图来写测试用例的步骤为___________________、___________________、___________________、把因果图转换为状态图和___________________及共五个步骤。
软件测试技术期末试题及答案A卷
![软件测试技术期末试题及答案A卷](https://img.taocdn.com/s3/m/a23be150bed5b9f3f90f1c74.png)
学院年月考试专业软件测试技术试题( A 卷)一、单项选择题(每小题2 分,满分30分)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、测试必须在详细设计已经完成的情况下才能开始;没有详细设计的信息调试不可能进行。
6、某次程序调试没有出现预计的结果,下列()不可能是导致出错的原因。
A.变量没有初始化 B.编写的语句书写格式不规范C.循环控制出错 D.代码输入有误7、软件缺陷修复的代价最高的阶段为()A、发布阶段B、需求阶段C、设计阶段D、编码阶段8、不属于逻辑覆盖方法的是()。
A.组合覆盖 B.判定覆盖 C.条件覆盖 D.接口覆盖9、()是选择若干个测试用例,运行被测程序,使得程序中的每个可执行语句至少执行一次。
A、条件覆盖B、组合覆盖C、判定覆盖D、语句覆盖10、()是设计足够多的测试用例,使得程序中每个判定包含的每个条件的所有情况(真/假)至少出现一次,并且每个判定本身的判定结果(真/假)也至少出现一次。
A、判定-条件覆盖B、组合覆盖C、判定覆盖D、条件覆盖11.软件测试是软件质量保证的重要手段,下述哪种测试是软件测试的最基础环节?()A.功能测试 B.单元测试 C.结构测试 D.验收测试12、单元测试的主要任务不包括()。
软件测试期末试题(含答案)1
![软件测试期末试题(含答案)1](https://img.taocdn.com/s3/m/e17fe4060a4e767f5acfa1c7aa00b52acfc79c12.png)
软件测试期末试题(含答案)1得分批卷人第一部分:理论题一、填空题(每题1分,共10分)1.测试计划编写6要素:___、___、when、where、who、how。
2.测试用例由________________和预期的________________两部分组成。
3.性能测试主要包括两方面内容________________和________________4.验收测试又分为________________和________________。
5.自顶向下测试有两种组合策略________________和________________。
得分批卷人二、选择题(每题2分,共20分)6.测试计划的制定必须要注意:A.测试策略测试范围B.测试方法测试安排C.测试风险测试管理D.以上都是()7.制定测试计划的步骤:()A.确定项目管理机制预计测试工作量测试计划评审B.确定测试范围确定测试策略确定测试标准、预计测试工作量C.确定测试构架确定项目管理机制预计测试工作量测试计划评审D.确定测试范围确定测试策略确定测试标准确定测试构架确定项目管理机制预计测试工作量测试计划评审8.软件测试用例主要由测试输入数据和()两部分组成。
A.测试计划B.测试规则C.测试的预期结果D.以往测试记录分析9.与设计测试用例无关的文档是()。
A.项目开发计划B.需求规格说明书C.软件设计说明书D.源程序10.在设计测试用例时,()是用得最多的一种黑盒测试方法A.等价类划分B.边界值分析第1页共6页C.因果图D.功能图11.黑盒测试方法的优点是()A.可测试软件的特定部位B.能站在用户立场测试C.可按软件内部结构测试D.可发现实现功能需求中的错误12.软件测试项目周期是指()A.需求阶段、测试计划B.阶段测试、设计阶段测试、执行阶段C.以上都不是D.以上都是13.软件测试过程模型有()A.V模型H模型B.W模型C.某模型D.以上都有14.负载测试属于A.压力测试B.性能测试C.并发测试D.可靠测试15.Loadruner主要是用来做什么测试的?()A.性能测试B.功能测试C.单元测试D.验收测试得分批卷人三、判断题,对的打√,错的打某(每题1分,共10分)16.项目立项前测试人员不需要提交任何工件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
西华师范大学计算机学院2013 年度期末测试软件测试 A 卷(11+18+12+19+40=100 分)一、单项选择(每空 1 分,共11 分)1、执行函数测试时,当多次调用底层函数,底层模拟器的"模拟值"输入栏可设定多个模拟值,一次最多可设置( C )个模拟值。
A 、1 B、3 C、6 D、112、当函数测试存在失败断言时,在白盒覆盖率信息窗口中VU 会显示一个( B )的条块来提示,没有失败断言时,会显示一个( A )的条块来显示;在逻辑结构窗口中,未覆盖的路径用( B )画出,已覆盖的路径用( A )画出,未覆盖的分支是( D )的条块。
A 、深绿色B、深红色C、浅蓝色D、粉红色E、浅绿色3、VU 导出的测试报告文件格式为:(C ),表格化测试用例数据导出的文件格式为:( E )A 、*.pdf B、*.txt C、*.htm D、*.csv E、*.xls F、*.doc4、在软件生命周期中的任何一个阶段,只要软件发生了改变,就可能给该软件带来新的问题。
软件的改变可能是源于发现错误并做好了修改,可能是因为在集成或维护阶段加入了新的模块,为了验证软件修改后的正确性需要进行( E )。
A 、白盒测试B、黑盒测试C、单元测试D、性能测试E、回归测试F、验收测试5、当用底层模拟器去模拟被测单元调用的底层函数的输出函数,并且此输出参数为指针数据类型,应该设置此参数的模拟值为( D )。
A 、指针值B、引用的地址C、指针指向的数据类型的值D、NULL6、当用底层模拟器去模拟被测单元调用的底层函数的返回值,并且此输出参数为指针数据类型,应该设置此参数的模拟值为( C )。
A 、指针值B、引用的地址C、指针指向的数据类型的值D、NULL二、多项选择(每空 2 分,共18 分)1、底层模拟能很好的解决(BCF )。
A 、集成测试问题B、装代码和数据失真C、测试不可控D、性能测试问题E、内部输出的模拟F、模拟参数为复杂数据类型,单元测试时难以初始化2、底层模拟器能够模拟( ABCEH )。
A 、底层函数的参数B、底层函数的返回值C、全局变量D、函数改写文件中的数据E、成员变量F、函数改写数据库中的数据G、内部输出H、调用次数3、执行函数测试后,源代码窗口能够标识出未覆盖的(BCD )。
逻辑结构图窗口能够标识出未覆盖的( AF )。
A 、路径B 、条件C 、 MC/DCD 、语句E 、C/DCF 、分支4、VU 与按自动的边界测试, 用于边界测试的边界值是由菜单项 "数据 "→定义边 界值来维护的。
VU 提供的 int 类型的默认值有( ACHJM ),bool 类型的默认 边界值有( I L ), double 类型的默认类型边界值有( DFGKN )。
A 、_01_pow ()B 、_11_Mcdc1()C 、 _12_Mcdc2()三、判断题 (每空 2 分,共 12 分) 注:正确的打钩,错误的打叉,并说明错误原因1、一个测试用例只允许有一个底层模拟,而一个函数可以有多个底层模拟。
(T)错误原因:2、底层模拟器可用于控制测试。
( T ) 错误原因:A 、语句覆100%分支覆盖: 路径覆盖: 100% B 、 语句覆盖: 32% 分支覆盖: 100% 路径覆盖: 98%C 、 语句覆盖: 100% 分支覆盖: 18% 路径覆盖: 100%D 、 语句覆盖:30% 分支覆盖: 50% 路径覆盖: 47%E 、语句覆100%分支覆盖: 95% 路径覆15%X6、在利用 VU 单元测试( ac//a )的过程中, 可能会出现 "语句:95%,分支: 路径: 15%"的情况。
A 、 F 、 K 、 P 、 0B 、 99999.9C 、 1.0 G 、9999.99 H 、 -9999.99 L 、false 0x7FFFFFFF 5、在利用 VU 进行单元测试的过程中,针对同一个测试用例集合,以下()的白盒覆盖情况是可能会出现的。
( A E//ac ) 补:分支覆盖达到 100%则语句覆盖也一定是达到了 100% 语句覆盖是最弱的覆盖0x80000000 1 I 、 true M 、-1 N 、 D 、 0.0 E 、-99999.9J 、0x7FFFFFFF -1.0 O 、0x80000000 100%,3、底层模拟器模拟的内部输入能够实现用例数据的表格化。
(T )错误原因:4、包含有空指针的测试用例能够实现用例数据的表格化。
(F)错误原因:空指针会被认为没有输入买自动设置为null ,所以不能表格化5、VU 在单元测试时,设计的每个测试用例都必须设置其预期输出。
(T )错误原因:6、在测试用例集中,测试用例的数量等于断言的数量。
(F )错误原因:错误,一个测试用例中可以出现多个断言四、简述题(1、2、3题各3分,4题6分,5题4分,共19分)1、简述在VU 的单元测试中,提高路径覆盖率的 3 种方法。
1:添加测试用例2:删除分支3:删除不可达路径2、简述在VU 的源代码窗口中,当前测试用例未覆盖的语句,VU 如何标识测试用例集未覆盖的语句。
VU 如何标识测试用例集未覆盖的条件和Mc/Dc ,VU 如何标识。
答:未覆盖语句:淡红色背景的红色字体表示未覆盖的条件和Mc/Dc :淡红色背景的红色字体[ T F M ] 表示T 表示真值未覆盖,F 表示假值未覆盖,M 表示MC/DC 未覆盖3、简述C/Dc 和Mc/Dc 的定义。
C/DC :条件/判定覆盖:判断中每个条件的所有可能取值至少执行一次,同时每个判断本身所有可能结果也至少执行一次。
MC/DC :修正的条件/判定覆盖,是一种软件结构覆盖率的测试准则。
修正条件判定覆盖要求:单元的入口和出口必须被调用一次,程序中判断的每一个分支必须至少被执行一次。
对于程序中通过逻辑运算组成判断的基本布尔条件,每个条件必须取遍所有可能的值,且每一个条件对判断的结果具有独立的作用。
** 掌握理论和实际情况下白盒覆盖准则相互间包含的关系,如下第六个成员函数源代码白盒覆盖率信息:均为100%测试用例4、分别设计出最少数量的测试用例,构成两套测试用例集,使CMyClass2 的成员函数_11_Mcdc1(BOOL,BOOL,BOOL)被100% C/DC和Mc/Dc ,_12_Mcdc2(BOOL,BOOL,BOOL,BOOL,BOOL,BOOL,BOOL,BOOL,BOOL,BOOL ,BOO L) 被100% C/DC,并为每个测试用例列出它在函数执行时所覆盖的条件的判定。
int CMyClass2::_11_Mcdc1(BOOL A,BOOL B,BOOL C) ( 100%C/DC 和MC/DC ){if(A && (B || C))return 1;return 0;} 测试用例如下:条件判定如下:int CMyClass2::_12_Mcdc2(BOOL A,BOOL B,BOOL C,BOOL D,BOOL E,BOOLF,BOOL G,BOOL H,BOOL I,BOOL J,BOOL K) ( 100%C/DC){if(A && ( (B||C) && (D&&E) ) && ((F||G) && (H||I||J)||K) )return 1;return 0;}测试用例如下:条件判定如下:5、为成员函数_01_Pow()设计测试用例,使其被100%语句,条件和C/DC 覆盖,统计出失败断言数,如果存在失败断言,列出失败断言(即测试用例的输入,预期输出和实际输出),指出软件曲线位置,并修复缺陷,保证测试结束,失败断言为0。
unsigned int CMyClass::_01_Pow(unsigned int g,unsigned int e){unsigned int result = 0;if(g==0)result = 0;else if(g==1)result = 1;else if(e==0)result = 1;else if(e==1)result = g;else{for(unsigned int i=0; i<e; i++)result *=g;}return result;}失败断言数:1失败断言为:case3软件曲线位置:修复缺陷:unsigned int result = 0; ——>> unsigned int result = 1;五、程序测试题( 1、3题各15分,2题10分,共40分)1、单元测试CMyClass2 的成员函数_07_DeleteComment(char *,char *),补充给定的测试用例集的预期输出和实际输出,统计失败断言的数量,如果失败断言数大于0,则说明软件存在缺陷,找到缺陷的具体位置,并修复它。
/* 函数说明:名称:CMyClass2::_07_DeleteComment功能:删除C++代码中的注释参数:pSrc:源代码pDes:保存删除注释后的代码返回:无*/void CMyClass2::_07_DeleteComment(char * pSrc,char * pDes){int len = strlen(pStr);if(len == 0)return;bool cmmSin = false;//由//开始\n 结束的单行注释bool cmmMul = false;//由/* 开始*/ 结束的多行注释char ch = *pSrc++;char next = 0;while(ch){if(!cmmSin && (cmmMul)){// 非注释if(ch=='/'){// 注释开始的第一个字符next =*pSrc;if(next =='\0')// 结束break;else if(next=='/') cmmSin = true;if(cmmMUl || cmmSin){ pSrc++;//忽略/后的一个字符ch = *pStr++;continue;}}*pDes++ = ch;ch = *pSrc++;}else if(cmmSin){// 单行注释if(ch=='\n'){// 单行注释结束cmmSin = false;*pDes++ = ch;//\n 是不能丢的}ch = *pSrc++;}else if(cmmMul){// 多行注释if(ch=='*'){// 开始多行注释next = *pSrc;if(next=='/'){ cmmMul = false; *pSrc++;// 忽略后面的/ }}ch = *pSrc++;}}}Case9(char *pSrc = 0;char *pDes = 0;)(Case9)失败断言 2 个,有两处缺陷:1,没有判断空指针2,测试用例4未得到正确结果。