当前位置:文档之家› 软件测试和软件质量保证练习答案

软件测试和软件质量保证练习答案

第一章软件质量保证练习答案1、软件质量的定义?软件质量是软件产品满足使用要求的程度。

对于软件质量的衡量,就是高质量的软件系统能够准时地交付给用户,所耗费的成本不超出预算,并且最重要的是,能够正常地运行。

“正常地运行”意味着该软件必须尽可能没有缺陷( bug)。

2、软件质量保证的定义?软件质量保证是一系列系统性的活动,它提供开发出满足使用要求产品的软件过程的能力证据。

3、质量控制中的测试技术有哪些?想一想各自的适用情况。

审查( Inspection ):软件的一种基本测试方法,它以一系列典型问题为依据进行检测。

走查( Walkthrough ):一对一的审查,比审查更加仔细。

回顾(Review):以发现软件中存在的错误和缺陷为目的的一种软件测试方法,它是在软件证实执行之前完成。

4、SDLC各阶段的文档有哪些,各自的质量目标是什么?请参照学生用书3-5 页,对于各阶段的目标,抓住主要的要点。

5、质量计划的手段和技巧分别有哪些?A、效益成本分析B、基本水平标准C流程图,包括因果图、系统程序流程图等D试验设计6、质量控制的手段和技巧分别有哪些?有以下控制的手段和技巧:检验、控制表、排列图、抽样调查统计、流程图和趋势分析等。

作业答案1、判断是非:好的测试员不懈追求完美。

错。

好的测试员知道何时完美无法企及,何时达到“够好”。

2、有没有质量很高但是可靠性很差的产品?请举例说明。

有可能,但是它取决于客户对质量的期望。

不少人购买高性能跑车,认为提速、时速、式样、舒适度和装饰好就是高质量。

此类汽车一般可靠性差,经常抛锚,修理费用昂贵,而车主不把可靠性差当作质量问题。

3、请思考,可能完全测试程序吗?除了极短小的简单程序,完全测试需要太多的输入、输出和分支组合。

此外,软件说明书也许不客观,可以用多种方式解释。

4、在学习完本章后,判断下列哪种方法会减少成本:a、让客户去找缺陷b发现缺陷而不是预防它们c、预防缺陷而不是发现它们d、忽视小的缺陷答案:c第二章测试技术练习答案1. 对2. 错3.代码4.功能5.归纳法、演绎法和回溯法。

6. 对7. 错作业答案1、列举软件测试原则软件测试过程中需要创建试用例来“破坏系统”,但在设计用例之前,需要遵循以下几个原则:完全测试程序是不可能的软件测试是有风险的行为测试无法显示潜伏的软件缺陷找到的软件缺陷越多,就说明软件缺陷越多并非所有软件缺陷都能修复软件测试一项讲究条理的技术专业2、d3、a第三章测试工具练习答案1.b2.对3. 错4、错5. 对作业答案第1 题答案:Pano rama2-C/C++勺主要好处如下:1.全面:它支持--错误较少和风险较小勺编码;使用图表理解、复查和检查代码;对系统结构、类继承、控制流等勺静态分析;通过程序逻辑分析和图表来检查逻辑错误;通过指定自下而上勺测试顺序而不设计和使用占位程序函数来进行增量式勺单元和集成测试;代码执行频率分析(在分支/段级别);对类模板、常规类、函数、块、分支、段和条件输出勺基于.mak 文件且面向对象勺代码测试以及测试覆盖分析,同时以图形化方式显示测试结果并突出显示未执行勺自动错误模拟;测试执行监视;在测试结果和需求/测试用例间进行跟踪;数据(全局和静态变量)使用分析;运行时错误分析和运行时错误定位(显示错误在源代码中勺原始行数);质量标准值设置;突出相关代码并报告相关数据勺安全代码修改;NFS网络中的客户端 -服务器应用程序;2.自动化:只需输入.mak 文件/批处理文件和测试脚本文件,所有勺静态和动态分析结果都会自动生成。

3.集成:所有的工具协同工作并共享一个增量式数据库。

4.易于查看结果:程序的所有静态和动态分析结果都可以通过以不同颜色进行标记的图/ 图表来生动表示。

5.易于使用:提供Motif/OpenLook/Widows GU、在线帮助和逐步的演示指导。

Pan orama2-C/C++的主要局限有以下几点:1、中文显示问题(对于这个缺点,请教师和学员在上机安排过程中,注意自己的操作系统环境,在一些显示中可能会有乱码,但这些乱码一般不会影响对于最终)2、使用自己的脚本技术,但这种脚本技术与其他的测试工具不兼容3、需要执行.mak文件,而不是编译C程序后生成的.obj文件4、仅能处理C/C++程序5、界面不够友好第四章测试计划和单元测试练习答案1. 对2. 对3. 错4. 等价划分5.白盒6. 对7. 对作业答案第1 题答案:单元测试说明书由一系列单元测试用例组成。

每个单元测试用例都应该包括四个基本要素:单元的初始状态说明,这是测试用例的起点(仅适用于单元在各次调用之间保持状态不变的情形)单元的输入,包括单元读入的任何外部数据的值测试用例实际要测试的内容,根据单元的功能性以及在设计测试用例时采用的分析(例如,要测试单元中的哪些判定)来制订测试用例的预期结果(测试用例的预期结果应该始终在执行测试之前在测试说明书中定义好)第2 题答案:制定单元测试说明书所包括的步骤:步骤1 - 使它运行起来任何单元测试说明书的第一个测试用例的目的都应该是尽可能以最简单的方式来执行被测试的单元。

实际执行测试时,知道至少第一个单元测试能够执行将可以大大增强信心。

如果执行不了的话,那么更可取的做法是进行简单的调试(例如从起点开始)。

合适的技术:根据说明书进行的测试等价划分步骤2 -正面测试测试用例应该设计为能够表明被测试的单元实现了它应该实现的功能。

测试设计者应该通读相关的说明书;每个测试用例应该测试说明书中的一条或多条陈述。

涉及到多个说明书时,最好能够使测试用例的顺序与单元主要说明书上的陈述的顺序相对应。

合适的技术:根据说明书进行的测试等价划分状态变换测试步骤3-负面测试应该改进现有的测试用例并且设计更进一步的测试用例,以表明软件没有实现任何未指明要完成的功能。

此步骤主要依赖于错误猜测,依赖于测试设计者预测问题域的经验。

合适的技术:错误猜测边界值分析内部边界值测试状态变换测试步骤4-特殊事项测试用例应该设计为针对性能、安全需求和保密需求等问题。

特别是在安全和保密方面,可以很方便地对测试用例进行特殊重点考虑,以帮助进行保密分析或安全分析和证明。

针对保密问题和安全危险而设计好的测试用例应该在单元测试说明书中加以标识。

此外,还应该在单元测试说明书中添加测试用例,以确保该单元所有可能的保密问题和安全危险都得到充分体现。

合适的技术:根据说明书进行的测试步骤5-覆盖测试设计好的测试用例可能达到的测试覆盖率应该是可视化的。

此外,可以在单元测试说明书中添加测试用例以达到特定的测试覆盖目标。

设计好覆盖测试之后,就可以制定测试规程并执行测试。

合适的技术:分支测试条件测试数据定义- 使用测试状态变换测试步骤6-执行测试根据上面五个步骤设计的测试说明书在大多数情况下都应该能为单元提供全面的测试。

在此阶段,可以使用该测试说明书来制定实际的测试规程,这个测试规程将用于执行这些测试。

测试规程的执行将识别单元中的错误,然后可以更正这些错误并对该单元重新进行测试。

测试规程执行期间的动态分析将会测量测试的覆盖率,表明覆盖目标是否已经达到。

于是,设计测试说明书的过程中还要有一个更进一步的覆盖完成步骤。

步骤7-覆盖完成除代码本身外,单元内的处理过程可能没有其他结构说明书,这取决于组织对单元说明书的标准。

制定测试说明书的过程中有可能会有人为的错误。

结果,代码中可能存在一些复杂的判定条件、循环和分支,执行测试时,可能未达到它们的覆盖目标。

在未达到覆盖目标情况下,应该进行分析以确定其背后的原因。

第3 题答案:错误猜测主要是凭经验,同时还需要诸如边界值分析等其他技术的一些辅助。

凭借经验,测试设计者猜测特定类型的软件中可能出现的错误类型,并设计测试用例来找到它们。

例如,如果有任何类型的资源是动态分配的,那么查找错误的一个好地方就是在解除资源分配的地方。

是不是所有资源都正确地解除分配了,或者软件执行过程中是否丢失了某些资源?由有经验的工程师来进行错误猜测可能是最有效地设计能发现错误的测试的唯一方法。

定位准确的错误猜测能够找到很多其他测试用例设计技术容易遗漏的错误。

相反,任用不合适的人来进行错误猜测可能会浪费时间。

在最大程度地利用现有经验并为此测试用例设计技术添加一些结构时,创建一个不同类型错误的检查列表是一个不错的想法。

然后可以使用这个检查列表来帮助“猜测”错误可能在单元中的什么地方出现。

应该根据从较早的单元测试中获得的经验来维护这个检查列表,以改进错误猜测的整体效率。

第五章度量测试结果与缺陷管理练习答案1.c 、d、e2.每一处设计。

3.错误作业答案第1 题答案:缺陷可以定义成:没有实现预定的使用需求或合理期望与规格说明书或标准存在偏差在与标准的一致性方面导致客户不满的任何问题第2 题答案缺陷管理的实现分各个不同阶段逐步完成。

这些阶段如下所示:1.缺陷标识、记录和报告2.缺陷的消除和跟踪3.缺陷度量和根由分析4. 缺陷预防/ 过程改进5. 软件开发生命周期所有阶段的测试6.安装测试工具7.缺陷管理问题包括:a. 缺陷遗漏b. 同类缺陷重复8.数据库更新不完全9.分类不严谨- 每个缺陷都划分为其他类型10.用来攻击项目分类的缺陷数据11.很多不负责任的错误12.重置是一个瓶颈13.相同的缺陷重现第3题答案测试完成之后,需要以适当的格式对它进行正式的报告。

错误报告必须包含以下类型的信息:第6章CMM和ISO练习答案1.(B)2.(A)3.(A)4.(B)5.(B)作业答案第1题答案:“能力成熟度模型”是SEI (软件工程研究所)在1986年幵发的过程,用于改善组织的软件技术的应用过程。

这个过程分为五个定义良好的顺序提高的等级:初始级、可重复级、已定义级、已管理级、优化级。

能力成熟度模型(CMM是设计用来帮助组织解决软件过程问题的。

能力成熟度模型提供了一种有效的和经过检验的方法,用以不断地加强对产品幵发过程的控制,并改进产品幵发过程;它提供了一个标尺,使组织可用来对其生产过程进行定期的测量;它也提供了进行优化及管理改进工作的数据。

CMM描述了软件特有的产品幵发实践和所有组织必须遵守的通用管理实践。

这些实践被组织为5个等级,以个性化的特定过程幵始,以受控制的、结构化的、持续改进的过程结束。

每一个等级都比前一等级加强了对生产环境的控制和管理。

依据模型对组织的实践进行评价,称为评估。

评估确定组织的等级,确定组织的当前状况,确定组织应该将主要精力投入到哪些管理实践,使投资获得高回报。

第2题答案:能力成熟度模型等级框图第3题答案:CMM勺不同等级是1级:初始级2级:可重复级3级:已定义级4级:已管理级5级:优化级2级:可重复级有效的过程可以描述为经过实践、已文档化、强力推行、已经培训、经过测量并可以改进的过程。

相关主题