软件测试期末题库晓庄学院
软件测试技术期末试题1

绝密★启用前学年第 期末考试级 专业( )《软件测试技术》试卷 A一、单项选择题(本大题共10小题,每小题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、系统负载可以看作是( )A. 并发用户并发数量+每次请求发送的数据量+负载模式B. 并发用户并发数量+每次请求发送的数据量+负载模式+思考时间 C .并发用户并发数量+思考时间+负载模式 D. 并发用户并发数量+每次请求发送的数据量+思考时间10、将软件的各种基本操作封装成相应的函数,编写测试脚本时直接调用,这种脚本技术是( ) A. 线性脚本 B. 结构化脚本 C. 数据驱动脚本 D. 关键字驱动脚本二、判断题(本大题共10小题,每小题1分,共10分) 1、软件自动化测试可以代替人工测试( ) 2、验收测试是以最终用户为主的测试( ) 3、Beta 测试是系统测试的一种( )4、FindBugs 是一种静态测试工具,可以测试C#代码( )5、软件兼容性测试重点考虑向前兼容( )6、基于风险测试时根据软件问题发生的可能性评估测试优先级,问题发生可能性越大,测试优先级越高( )7、好的测试工程师应具有反向思维和发散思维能力( )8、回归测试不仅要验证被修复的软件缺陷是否被解决了,还要验证以前的功能是否依旧保持正常( ) 9、敏捷测试符合敏捷开发原则( )10、测试项目的资源主要分为人力资源、系统资源以及环境资源( ) 三、名词解释(本大题共5题,每小题4分,共20分)1、单元测试2、等价类3、黑盒测试4、测试用例5、桩程序横线以内不许答题四、简答题(本大题共4小题,每小题5分,共20分) 1、简述验证和确认的区别。
软件测试期末考试复习题(学生版)

• A.阶段2:分析需求阶段• B.阶段3:实现需求阶段• C.阶段1:定义需求阶段• D.阶段4:校验需求阶段• A.一个执行排序功能的函数• B.一个类• C.类中的一个功能方法• D.类中的Getter方法• A.对于有效等价类可以不设计测试用例• B.利用无效等价类设计的测试用例,可以检验程序中功能和性能是否不符合需求说明书的规定• C.利用有效等价类设计的测试用例,可以检验程序是否实现了需求说明书中规定的功能和性能• D.对同一个程序可能会划分出多种不同的等价类A• A.在程序员眼中,实施单元测试意味着减少工作量,因为测试脚本是测试人员负责编写的• B.在程序员眼中,实施单元测试意味着可以随意编码了• C.对于领导者来说,要实施单元测试也要控制成本• D.对于领导者来说,要实施单元测试就必须牺牲开发进度• A.由输入+实际输出+测试环境构成• B.反映系统实际执行结果• C.描述用户预期输出• D.能代表需求的小的测试单元得分/总分• A.• B.• C.• D.观察下图的结构,该函数的结构复杂度高吗?得分/总分• A.有点高,但可以接受• B.不高,完全可以接受• C.不好说• D.高,应尽量降低复杂度• A.①②④• B.①②③• C.①②③④• D.②③④• A.分别输入1、50、100条记录• B.分别输入0、1、50、99、100条记录• C.分别输入0、1、99、100、101条记录• D.分别输入0、1、50、99、100、101条记录• A.可以• B.如果作者不是开发人员,则可以,否则不行• C.不可以• D.如果作者是开发经理,则可以,否则不行• A.判定覆盖• B.条件覆盖• C.语句覆盖• D.条件组合覆盖• A.多出口节点对程序带来的风险• B.数据变量关联性对程序带来的风险• C.串行语句规模对程序带来的风险• D.条件判定节点引入的多分支对程序带来的风险• A.打开-修正-关闭-修正-修正-关闭-打开• B.新提交-打开-打开-修正-关闭-修正-重新打• C.新提交-打开-打开-关闭-修正-关闭-重新打开• D.新提交-打开-打开-修正-修正-关闭-重新打开在如下的控制流图中有多少个判定节点?得分/总分• A.18• B.19• C.17• D.20• A.Parameterized• B.以上都不对• C. Categories• D.Suite在这两个关于缺陷到达率模式的图中,关于其质量级别的正确描述是:得分/总分• A.二者的开发质量相同• B.左图表示的开发质量优于右图• C.仅从这两个图无法看出二者开发质量的差别• D.右图表示的开发质量优于左图• A.程序代码的圈复杂度低于10• B.程序中存在循环• C.程序只有一个入口节点和一个出口节点• D.所有路径的数量不超过6条• A. JUnit5可提供对JUnit3和JUnit4版本的脚本兼容• B.在JUnit3.x版本中,所有测试类必须继承TestCase类• C.在JUnit4.x版本中,被Test注解的方法会在执行测试中被框架自动发现和执行• D.在JUnit4.x版本中,使用Before所注解的方法在某测试类中所有测试方法执行之前执行一次• A.选择扫描登录时,二维码显示不出来• B.选择账户登录,输入账户、密码后,自动选中【记住我】• C.选择手机号登录,输入手机号,点击【获取验证码】,在10分钟内无法收到验证码短信• D.选择手机号登录,输入手机号,输入密码时,密码显示为用户输入的原始符号• A.单元测试完全采用白盒测试方法完成• B.单元测试往往需要编写桩模块和驱动模块• C.单元测试包括动态测试和静态测试• D.单元测试也需要进行计划、设计、执行、评审等一系列过程• A.不会,程序猿会回复无法重现,将缺陷报告直接驳回• B.不会,程序猿会直接将缺陷关闭• C.会,程序猿会设法重现该缺陷并修复• D.会,程序猿会找测试人员确认,并设法重现该缺陷,然后修复• A.无法穷尽• B.1000• C.1728• D.30• A.一个模块的功能是否会对另一个模块的功能产生不利影响• B.输入的实际参数与形式参数的个数不相同• C.提示的错误与实际的错误不相符• D.变量的初始值或缺省值有错误• A.测试数据应与测试用例关联• B.测试用例应保持独立• C.测试结果应尽量由脚本自动校验• D.测试代码应与产品代码放在一起• A.限制参与者人数,并要求评审会之前做好准备• B.对评审中出现的问题要充分讨论,以求彻底解决• C.要有严格的评审计划,并遵守日程安排• D.评审产品,而不是评审生产者的能力• A.选择多种指标,对测试展开全面评估• B.根据需求,采用各种方法进行测试设计• C.对测试进行详尽且周全的计划• D.完全依托测试工具,自动、快速地执行软件测试• A.性能测试设计的关键是使用测试工具• B.性能测试中,可利用脚本参数化实现让多个虚拟用户使用几个不同的实际发生数据来执行同一脚本的目的• C.不借助测试工具几乎无法展开性能测试• D.性能测试中常见的系统指标包括:平均响应时间、每秒事务数、每秒点击数、吞吐量等• A.可用性可以看做是产品竞争力的核心• B.可靠性是产品修改中体现出来的质量• C.McCall质量模型的顶层是软件的内在特性• D.McCall质量模型是通过构建质量属性之间的关系,分析质量属性来构建质量模型• A.优选组合测试方法• B.优选边界值测试方法• C.优选场景法• D.优选正交法• A.只要一个新的功能点开发完成,就立刻开发对应的功能测试脚本• B.录制脚本时不要提前识别被测系统中的对• C.确保测试脚本相互独立,以避免不同脚本之间的影响• D.录制业务流程尽量长的测试脚本• A.JMeter是基于JAVA的压力测试工具• B.PerformanceRunner是用于性能测试的工具• C.TestCenter是用于测试管理的工具• D. JUnit是基于Java的单元测试工具• A.软件具有所期望的各种属性的组合程度• B.确定软件在使用中将满足顾客预期要求的程度• C.软件产品中能满足给定需要的性质和特性的总体• D.顾客和用户觉得软件满足其综合期望的程度得分/总分• A.(2, 30, 1)• B.(-30, 20, 30)• C. (-8, 20, 3)• D.(-19, 0, 29)• A.被分析的特性或功能点复杂,输入项目很多的情况下• B.系统输入之间基本没有相互联系• C.系统输入之间相互约束多,需要做大范围的组合测试情况下• D.输入输出明确,且输入输出存在明确的因果关系• A.系统测试• B.单元测试• C.桌面检查• D.基于CA工具的代码审查得分/总分• A.使用断言校验执行结果• B.在被测类的main函数中编写测试脚本• C.在一个测试方法中执行多个测试用例• D.在同一个测试类中,所有测试方法共用一个被测类的对象• A.对缺陷进行分类,确定需要优先解决的缺陷,可以减少缺陷报告的处理成本• B.风险和成本是某些程序缺陷不被修复的常见理由• C.在新的软件版本中,要关注那些被推迟修复的缺陷• D.严重程度高的缺陷必须优先解决• A.可重用性• B.可维护性• C.可移植性• D.可读性• A.软件测试是提高软件质量的一种手段• B.软件质量是由软件测试保证的• C.软件质量是在软件过程中逐步建立起来的• D.软件过程包括软件测试• A.安全测试• B.强度测试• C.易用性测试• D.负载测试A、B、C、D。
大学软件测试试题及答案

大学软件测试试题及答案在软件开发领域中,软件测试是一个非常重要的环节。
为了保证软件的质量和稳定性,开发者需要经过严谨的测试过程。
大学软件测试试题及答案是大学软件测试课程中常见的考试形式之一,下面将介绍一些常见的软件测试试题及其答案。
1. 选择题1.1.软件测试的目的是什么?A. 发现软件中的错误B. 验证软件是否符合需求规格C. 评估软件的质量D. 以上答案都正确答案:D. 以上答案都正确1.2.测试工程师主要负责以下哪项任务?A. 编写需求规格说明书B. 设计测试用例C. 运行测试并记录结果D. 以上答案都正确答案:D. 以上答案都正确2. 填空题2.1.请简要描述黑盒测试的概念。
答案:黑盒测试是一种测试技术,测试人员只关注软件的输入和输出,而不考虑内部的具体实现。
测试人员基于软件的需求规格和功能,设计测试用例来验证软件的功能是否符合预期。
2.2.请列举至少两种常见的黑盒测试技术。
答案:等价类划分测试、边界值测试、决策表测试、因果图测试等。
3. 简答题3.1.请说明白盒测试的概念及其优点。
答案:白盒测试是一种测试技术,测试人员通过了解软件的内部实现,设计测试用例来验证软件的内部逻辑是否正确。
白盒测试的优点包括能够发现隐藏的错误、全面覆盖软件的执行路径、可以针对复杂的代码进行测试等。
3.2.请简要描述缺陷的生命周期。
答案:缺陷的生命周期包括以下几个阶段:发现、报告、修复、验证和关闭。
在发现阶段,测试人员通过执行测试用例发现了一个缺陷;在报告阶段,测试人员将缺陷详细描述并提交给开发团队;在修复阶段,开发团队根据测试人员提供的信息修复缺陷;在验证阶段,测试人员重新执行相关的测试用例来验证缺陷是否已经修复;最后,在关闭阶段,测试人员确认缺陷已经被修复并关闭该缺陷。
本文简要介绍了一些常见的大学软件测试试题及其答案。
通过学习和掌握这些试题及答案,可以对软件测试的基本知识和技术有一个全面的了解。
软件测试的重要性不容忽视,希望这些试题及答案能够帮助大家更好地理解和应用软件测试的方法和技巧。
《软件测试技术》期末考试卷1 闭卷

一、单项选择题(每题2分,共20分)1.在软件生命周期的哪一个阶段,软件缺陷的修复费用最低?()A、需求分析(编制产品说明书)B、设计C、编码D、产品发布2.单元测试中用来模拟被测试模块调用者的模块是()A、父模块B、子模块C、驱动模块D、桩模块3.软件测试员究竟做些什么?()A、测试人员的目的是发现软件的缺陷B、测试人员的目的是发现软件的缺陷,尽可能早一些C、测试人员的目的是发现软件的缺陷,尽可能早一些,并确保其得以修复D、测试人员的目的是发现软件的缺陷,尽可能早一些,并将其得以修复4.下列项目不属于测试文档的是()A、测试计划B、测试用例C、程序流程图D、测试报告5.产品发布后修复软件缺陷要比项目开发早期这样做的费用要高()A、1~2倍B、10~20倍C、50倍D、100倍以上6.关于软件质量的描述,正确的是()A、软件质量是指软件产品满足规定用户需求的能力B、软件质量特性是指软件的功能性、可靠性、易用性、效率、可维护性、可移植性C、软件质量保证过程就是软件测试过程D、以上描述都不对7、关于自动化测试局限性的描述,以下错误的是()A、自动化测试不能取代手工测试B、自动化测试比手工测试发现的缺陷少C、自动化测试不能提高测试的覆盖率D、自动化测试对测试设计依赖性极大8.与确认测试有关的文档是()A、需求规格说明书B、概要设计说明书C、详细设计说明书D、源程序9.阅读以下流程图1-1,当使用判定覆盖时,至少需要设计()个测试用例A、2B、4C、6D、810.软件测试用例主要由输入数据和()两部分组成A、测试计划B、测试规划C、预期输出结果D、以往测试记录分析二、填空题(每题1分,共15分)1.软件测试一般经过4个测试:(1),(2),(3),(4)2.软件测试生命周期分为:测试计划、(5)、(6)、测试执行、测试过程评估五个阶段3.在兼容性测试中,(7)是指可以使用软件以前的版本,(8)是指可以使用软件未来的版本4.软件缺陷根据严重程度分为(9)、(10)、一般和轻微5.自动化测试技术主要包括:代码分析、(11)、(12)、自动化比较、虚拟用户6.对系统不断施加越来越重的负载,则确定系统的瓶颈的测试称之为(13)测试7.软件缺陷按测试开发阶段分为(14)缺陷、设计缺陷和(15)缺陷图1-1三、简答题(每小题5分,共20分)1.性能测试包含哪些内容?2.简述系统测试与集成测试的区别3.什么是回归测试?常用的回归测试方式有哪些?4.简述使用QTP工具进行测试的五大步骤四、测试用例设计题(每小题15分,共45分)1、某商场在节日期间,进行优惠活动。
大学软件测试题及答案

大学软件测试题及答案一、单项选择题1. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的缺陷C. 证明软件是错误的D. 证明软件是无缺陷的答案:B2. 黑盒测试方法中,以下哪个不是测试用例设计的依据()。
A. 等价类划分B. 边界值分析C. 语句覆盖D. 决策表答案:C3. 软件测试中,回归测试的目的是()。
A. 验证软件是否满足需求B. 验证软件是否正确C. 验证软件是否稳定D. 验证修改后软件的功能是否正常答案:D4. 以下哪个不是白盒测试技术()。
A. 语句覆盖B. 路径覆盖C. 条件覆盖D. 错误猜测答案:D5. 软件测试的V模型中,单元测试应该在哪个阶段进行()。
A. 编码阶段B. 需求分析阶段C. 设计阶段D. 维护阶段答案:A二、多项选择题6. 软件测试的基本原则包括()。
A. 测试显示存在缺陷B. 穷尽测试是不可能的C. 早期测试D. 缺陷群集原理答案:ABCD7. 软件测试的类型包括()。
A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD8. 软件测试过程中,以下哪些是测试计划应该包含的内容()。
A. 测试范围B. 测试资源C. 测试环境D. 风险评估答案:ABCD9. 以下哪些是软件测试中的风险因素()。
A. 需求不明确B. 项目进度紧张C. 测试资源不足D. 技术难度大答案:ABCD10. 软件测试中的静态分析方法包括()。
A. 代码审查B. 代码走查C. 静态代码分析工具D. 动态代码分析工具答案:ABC三、判断题11. 软件测试可以完全替代人工测试。
()答案:错误12. 软件测试的目的是尽可能多地发现软件的缺陷。
()答案:正确13. 软件测试可以预防软件缺陷的产生。
()答案:错误14. 软件测试只能发现软件中的缺陷,不能证明软件是无缺陷的。
()答案:正确15. 软件测试的目的是提高软件质量,减少维护成本。
()答案:正确四、简答题16. 简述软件测试的目的。
《软件测试》期末试卷(含答案).docx

《软件测试》试卷一、判断题(每题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中如何评价和度量软件质量的。
软件测试技术期末试题及答案A卷

4 TC3 1→2→4→6→7 2 1 1 2 TC4 1→2→4→5→7 3 1 0 0 TC5 1→2→3→4→5→7 3031
B .全局数据结构 C .独立路径 D .模块接口 13、自底向上增量式集成测试中,下面( )描述是正确的。 A .测试由桩模块控制 B .最上面的模块最先测试 C .父单元用测试过的子单 元测试 D .包含树的深度优先或广度优先遍历过程 14、单元测试中用 来模拟实现被测模块需调用的其他功能模块的是( )。 A .驱 动模块 B .桩模块 C .主控模块 D .真实的被调用模块 15、 集成测试计划应该在( )阶段末提交。 A 、需求分析 B 、概要设计 C 、详细设计 D 、单元测试完成 二、判断题 (每题 2 分,满分 20 分) 1、一个程序中所含有的路径数与程序的复杂程度有着直接的关 系。( ) 2、结构性测试是根据软件的规格说明来设计测试用例。( ) 3、错误推测法是根据输出对输入的依赖关系来设计测试用例的。 () 4、软件缺陷属性包括缺陷标识、缺陷类型、缺陷严重程度、缺 陷产生可能性、缺陷优先级、缺陷状态、缺陷起源、缺陷来源、
2022年南京晓庄学院数据科学与大数据技术专业《操作系统》科目期末试卷A(有答案)

2022年南京晓庄学院数据科学与大数据技术专业《操作系统》科目期末试卷A(有答案)一、选择题1、某时刻进程的资源使用情况见表。
此时的安全序列是()A.P1、P2、P3、P4B. P1、P3、P2、P4C. P1、P4、P3、P2D.不存在2、下列选项中,在用户态执行的是()。
A.命令解释程序B.缺页处理程序C.进程调度程序D.时钟中断处理程序3、下列选项中,满足短任务优先且不会发生“饥饿”现象的调度算法是()。
A.先来先服务B.高响应比优先C.时间片轮转D.非抢占式短任务优先4、在多进程的系统中,为了保证公共变量的完整性,各进程应互斥进入临界区。
所谓临界区是指()。
A.一个缓冲区B.一段数据区C.同步机制D.一段程序5、()有利于CPU繁忙型的作业,而不利于1/0繁忙型的作业(进程)。
A.时间片轮转调度算法B.先来先服务调度算法C.短作业(进程)优先调度算法D.优先权调度算法6、操作系统的I/O子系统通常由4个层次组成,每-层明确定义了与邻近层次的接口,其合理的层次组织排列顺序是()。
A.用户级I/O软件、设备无关软件、设备驱动程序、中断处理程序B.用户级I/O软件、设备无关软件、中断处理程序、设备驱动程序C.用户级I/O软件、设备驱动程序、设备无关软件、中断处理程序D.用户级I/O软件、中断处理程序、设备无关软件、设备驱动程序7、系统将数据从磁盘读到内存的过程包括以下操作:① DMA控制器发出中断请求②初始化DMA控制器并启动磁盘③从磁盘传输一块数据到内存缓冲区④执行“DMA结束”中断服务程序正确的执行顺序是():A.③①②④B.②③①④C.②①③④D.①②③④8、在系统内存中设置磁盘缓冲区的主要11的是()。
A.减少磁盘1/0次数,B.减少平均寻道时间C.提高磁盘数据可靠性D.实现设备无关性9、文件系统中设立打开(open)系统调用的卡要目的是()。
A.把文件从辅存读到内存B.把文件的控制信息从辅存读到内存C.把文件的FAT表信息从辅存读到内存D.把磁盘文件系统的控制管理信息从辅存读到内存10、采用分段存储管理的系统中,若段地址用24位表示,其中8位表示段号,则允许每段的最大长度是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题型: -客观题:选择题(10*1’)+填空题(10*2’ ) +判断题(10*1 )共40分 -简答题: 4*5’分,共20分 -分析题: 4*10’题,共40分
#Chap 1 ·软件测试的概念 (P9) ·软件测试正反2种观念的争辩。他们的观念及存在的问题。 (P7~9) ·结合V模型谈谈开发与测试关系 P11 ·请结合实例,谈谈为什么穷尽测试是不可能的。(开放题,从输入和路径穷尽来考虑) ·了解测试目的、测试驱动开发的概念 (P9 P13)
#Chap 2 ·软件质量的概念 软件质量定义:软件产品满足规定的和隐含的与需求能力有关的全部特征和特性。它包括:1软件产品质量满足用户要求的程度;2软件各种属性的组合 程度3用户对软件产品的综合反映程度4软件在使用过程中满足用户要求的程度(P15) ·ISO9126软件质量模型(一层6个即可),并分别说明各个质量属性的含义 (P17) Iso9126模型:高层:软件质量需求评价标准(SQRC)属性:功能性、可靠性、可用性、效率、可移植性、可维护性 中层:软件质量设计标准(SQDC) 属性: 安全性、、成熟性、可理解性、时间表现、可分析性、适应性 低层:软件质量度量标准(SQMC) ·软件缺陷的定义及表现形式 软件缺陷:是指计算机系统或者程序中存在的任何一种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷、瑕疵,其结果会导致软件产品在某种程度上不能满足用户的需求 表现形式:1运行出错,包括 运行中断、系统崩溃、界面混乱2数据计算错误,导致结果不正确3功能、特性没有实现或部分实现4在某种特点条件下没能给出正确或准确的结果5计算的结果没有满足所需要的精度6用户界面不美观7需求规格说明书的问题8设计不合理,存在缺陷9实际结果与预期结果不一致10用户不能接收的其他问题 (P18) ·验证与确认(V&V)的概念及两者区别V&V 验证:是检验开发出来的软件产品和设计规格说明书的一致性,即是否满足软件厂商的生产要求 确认:就是检验产品功能的有效性,即是否满足用户的真正需求 (P21) ·SQA的概念及表现形式、与软件测试的关系 SQA与软件测试之间相辅相成,存在包含和交叉的关系。它们的相同点在于二者都是贯穿整个软件开发生命周期的流程。不同在于SQA 是一项管理工作,侧重与对流程的评审和监控,而测试是一项技术性的工作,侧重于对产品的评估和验证 (P23) ·软件测试的分类:按阶段、按目标、按方法。 (P23~P25 目的分类:集成测试、功能测试、回归测试、性能测试、可靠性测试、安全测试、兼容性测试 阶段分类:单元测试、集成测试、功能测试、系统测试、安装测试、验收测试 方法分类:静态测试、动态测试、黑盒测试、白盒测试 -静态测试和动态测试、黑盒测试和白盒测试 -按阶段:单元测试、集成测试、系统测试、验收测试,它们的概念与不同。 -非功能测试:性能测试、可靠性测试、安全性测试,及常见非功能缺陷辨析。
#Chap 3 ·请简述什么是黑盒测试和白盒测试,它们各自的局限性是什么? P31 P38 黑盒测试:不关注软件内部结构,着眼于程序外部用户界面,关注软件的输入和输出,关注用户的需求,从用户的角度验证软件的功能,实现端到端的测试。 缺陷:1是否不正确或遗漏了功能2能否正确地接收输入数据,能否产生正确的输出信息3功能操作逻辑不合理4界面是否出错、是否不美观5安装过程中出现问题,安装步骤不清晰、不够方便灵活6系统初始化问题 白盒测试:按照程序内部的结构测试程序,测试程序内部的变量状态、逻辑结构、运行路径等 缺陷:试图列举所有路径测试,是不可能的,企图遍历所有的路径是很难做到的,即使每条路径都测试了,覆盖率得到100%,程序也可能出错。 ·白盒测试常用的逻辑覆盖有哪些,各自的基本思想。 P31~P38 白盒测试常用的逻辑覆盖:语句覆盖:运行被测程序,是程序中的每个可执行语句至少被执行一次 判定覆盖:设计若干个用例,运行被测程序,使得程序中每个判断的取真分支和假分支至少经历一次,及判断真假是否均被满足 条件覆盖:执行被测程序,使判断中每个条件的可能取值至少被满足一次 判定-条件覆盖:使所有条件的可能取值至少被执行一次,所有判断的可能结果至少执行一次 条件组合覆盖:使判断中每个条件的所有可能至少出现一次,且每个判断本身的判定结果也至少出现一次 路径覆盖:覆盖程序中所有可能的执行路径 基本路径测试法5步骤(1)程序的流程控制图(2)计算程序环路复杂度(3)确定基本路径(4)准备测试用例,确保基本路径组中的每一条路径被执行一次(5)图形矩阵 ·白盒测试的逻辑覆盖用例设计方法及应用:重点掌握语句、判定、条件组合、路径覆盖。应用参见。 ·基本路径(独立路径)的概念及环路复杂度(圈复杂度)的计算、确定基本路径的方法。应用参见 ·黑盒测试的概念、常用的黑盒测试方法有哪些,各自的基本思想。 黑盒测试的方法:1等价类划分法:借助数据的输入输出来判断功能能否正常运行(是否可以用一组有限的数据去代表近似无限的数据) 2边界值分析法:对输入的条件进行分析并找出其中的边界值条件,通过这些边界值的测试来发现更多的错误 3判定表方法:采用一种适合于多种条件的组合,相应地产生多个动作(结果)的方法来进行测试用例的设计 4因果图法5正交试验法6功能图法 ·黑盒测试的用例设计方法及应用:重点掌握等价类、边界值、判定表、组合测试。应用参见。 ·采用错误推测法进行测试。例:针对打开文件失败你考虑测试哪些情况?(开放题)
#Chap 4 ·测试过程模型TMap的生命周期.(P69页) TMap所定义的测试生命周期由计划和控制、准备、说明、执行和完成等阶段组成 (1)计划和控制阶段涉及测试计划的创建,定义了执行测试活动的“who,what,when,where and how”。在测试过程中,通过定期和临时的报告,客户可以经常收到关于产品质量和风险的更新 (2)准备阶段决定软件说明书质量是否足以实现说明书和测试执行的成功 (3)说明阶段及定义测试用例和构建基础设施。 (4)执行阶段,需要分析预计结果和实际结果的区别,发现缺陷并报告 (5)完成阶段包括对测试资料的维护一便于再利用,创建一个最终的报告以及为了更好地控制将来的测试过程对测试过程进行评估 ·了解常见的过程改进模型:TMM、TPI、CTP、STEP等; (P71) TPI(test process improvrment,测试过程改进),一个逐步完善测试过程的模型 TMM(测试成熟度模型) CTP(critical test process, 测试过程评估模型主要是一个内容参考模型,一个上下文相关的方法,并能对模型裁剪) STEP(systematic test and evaluation process,系统化测试和评估过程)是一个内容参考模型,认定测试是一个生命周期活动,在明确需求后开始直到系统退役。 ·了解软件工程标准规范的5个级别:国际标准ISO、国家际准GB、行业标准IEEE、企业规范、项目规范 (P80) ISO一般,有国际机构制定和公布供各国参考的标准为国际标准 GB由政府或国家级的机构制定或批准,适用于本国范围的标准 IEEE有一些行业机构、学术团体或国防机构制定,并适用于某个业务领域的标准 企业规范:一些大型企业或公司,由于软件工程工作的需要,制定适用于本部门的规范 项目规范:为一些科研生产项目需要而由组织制定一些具体项目的操作规范,此种规范制定的目标很明确,即为该项任务专用。 #Chap 5 ·单元测试的定义和主要任务 (P95 、P97) 单元测试:是对软件组成单元进行的测试,而且软件单元是在与程序的其他部分相隔离的情况下进行独立的测试 单元测试的主要任务:包括逻辑、功能、数据和安全性等各方面的测试,包括单元中所有 独立执行路径、数据结构、接口、边界条件、容错性等测试。(p97 p98有详细内容) ·代码评审中常见缺陷模式的识别。参见 ·什么叫驱动和桩?画出单元测试模型图 (P107 图5-2) 驱动:驱动程序,驱动模块,用于模拟被测模块的上级模块,能够调用被测模块,并在测试过程中,驱动模块接受测试数据,调用被测模块并把相关的数据传送给被测模块 桩:桩程序,桩模块,用于模拟被测模块工作过程中所调用的下层模块。
#Chap 6 ·集成测试的模式及各自优缺点 P126 集成测试基本可以概况为2种: 1非渐增式测试模式:先分别测试每个模块,再把所有模块按设计要求放在一起结合成所要求的程序,如大棒模式 2渐增式测试模式:把下一个要测试的模块同已经测试好的模块结合起来进行测试,测试完再把下一个应该测试的模块结合进来测试 各自优缺点: 渐增式测试模式:需要编写的软件较多,工作量较大,而非渐增式测试模式测试开销小 渐增式测试模式:发现模块间接口错误早,而非渐增式测试模式晚 渐增式测试模式:测试更彻底 渐增式测试模式:需要较多的机器时间 非渐增式测试模式:发现错误较难诊断,而使用渐增式测试模式,如果发现错误则往往和最近加进来的那个模块有关 使用非渐增式测试模式:可以并行测试 ·大棒与三明治集成方法的概念及方法应用(给一个模块结构图,写出它的集成图)P129 大棒:采用大棒集成方法,先是对每一个子模块进行测试(单元测试阶段),然后将所有模块一次性地全部集成起来进行集成测试,适合在规模较小的应用系统中使用(图:p129图6-4) 三明治:它将自顶向下和自底向上的集成方法有机地结合起来,不需要写桩程序,因为在测试初自底向上集成已经验证了底层模块的正确性。 ·回归测试的目的、过程及选取用例的策略 P133 回归测试的目的是在程序有修改的情况下保证原有功能正常的一种测试策略和方法,因为这时的测试不需要进行全面测试,从头到尾测一遍,而是根据修改的情况进行有效测试 修改的两层含义:1所做的修改达到了预定的目的,如错误得到了改正,新功能得到了实现,能够适应新的运行环境等;2不影响软件原有功能的正确性。 回归测试过程:(1)识别出软件中被修改的部分(2)从原基线测试用例库T中,排除所有不再适用的测试用例,确定那些对新的软件版本依然有效的测试用例,其结果是建立一个新的基线测试用例库T0(3)依据一定的策略从T0中选择测试用例测试被修改的软件(4)如果回归测试包不能达到所需的覆盖要求,必须补充新的测试用例使覆盖率达到规定的要求,生成新的测试用例集T1,用于测试T0无法充分测试的软件部分。(5)用T1执行修改后的软件 选取用例的策略:应该兼顾效率和有效性两个方面。方法:(1)再测试全部用例(2)基于风险选择测试(3)基于操作刨面选择测试(4)再测试修改的部分