软件质量保证与测试考试复习资料

合集下载

软件测试与质量保证考试

软件测试与质量保证考试

软件测试与质量保证考试(答案见尾页)一、选择题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. JiraB. TrelloC. AsanaD. Microsoft Teams12. 黑盒测试与白盒测试的主要区别是什么?A. 黑盒测试侧重于测试软件的输入和输出,而不关注内部实现B. 白盒测试侧重于测试软件的内部结构和逻辑C. 黑盒测试通常使用自动化工具进行D. 白盒测试通常使用手动测试进行13. 测试用例设计的基本原则包括哪些?A. 确保测试用例全面覆盖所有可能的输入组合B. 确保测试用例独立无关,避免重复和冗余C. 确保测试用例具有明确的前提条件D. 确保测试用例能够模拟用户实际操作14. 在软件测试过程中,当发现缺陷时,应采取以下哪个步骤?A. 记录缺陷报告,并继续进行测试B. 修复缺陷并重新测试C. 与开发团队讨论缺陷解决方案D. 评估缺陷的影响范围15. 回归测试的目的是什么?A. 验证已修复的缺陷是否再次出现B. 检查软件的新版本是否有新的缺陷C. 确保软件的修改没有引入新的问题D. 对软件进行性能测试16. 验证软件功能是否满足需求的方法有哪些?A. 测试用例测试B. 接口测试C. 性能测试D. 安全测试17. 在软件测试中,如何确定测试的充分性和完整性?A. 制定详细的测试计划B. 进行随机测试C. 代码审查D. 使用自动化测试工具18. 在软件测试中,为什么需要关注潜在的缺陷和风险?A. 提高软件质量B. 减少客户投诉C. 降低维护成本D. 提高市场竞争力19. 软件测试与质量保证之间的关系是什么?A. 质量保证是软件测试的一部分B. 软件测试是质量保证的一部分C. 质量保证和软件测试是相互独立的D. 质量保证和软件测试相互依赖20. 软件测试的目的是什么?A. 评估软件的性能B. 确保软件满足用户需求C. 识别和修复软件中的错误D. 提高客户满意度21. 在软件测试中,常用的缺陷管理工具是什么?A. JiraB. TrelloC. ConfluenceD. Visual Studio22. 黑盒测试与白盒测试的区别是什么?A. 黑盒测试关注软件的内部结构,白盒测试关注软件的实现细节B. 黑盒测试侧重于功能测试,白盒测试侧重于结构测试C. 黑盒测试成本较低,白盒测试成本较高D. 黑盒测试不需要代码了解,白盒测试需要代码了解23. 在软件测试的哪个阶段进行冒烟测试?A. 需求分析阶段B. 设计阶段C. 编码阶段D. 测试阶段24. 回归测试是在哪个阶段进行的?A. 编码阶段B. 测试阶段C. 维护阶段D. 都可以25. 测试用例通常包括哪些信息?A. 用例编号B. 用例描述C. 输入数据D. 预期结果26. 功能测试与非功能测试的区别是什么?A. 功能测试关注软件的功能实现,非功能测试关注软件的性能B. 功能测试关注软件的可用性,非功能测试关注软件的安全性C. 功能测试成本较低,非功能测试成本较高D. 功能测试与业务相关,非功能测试与技术相关27. 测试计划通常包括哪些内容?A. 测试目标B. 测试范围C. 测试资源D. 测试进度安排28. 在软件测试中,如何验证已修复的错误?A. 重新执行测试用例B. 增加测试用例C. 修改测试用例D. 无需进行额外操作29. 什么是探索性测试?A. 不依赖测试用例的测试B. 依赖于测试用例的测试C. 顺序执行的测试D. 无法重复的测试30. 软件测试的目的是什么?A. 评估软件的性能B. 确保软件满足用户需求C. 识别和修复软件中的错误D. 提高软件的可维护性31. 在软件测试中,常用的缺陷管理工具是什么?A. JiraB. TrelloC. VersionOneD. Asana32. 在进行软件测试时,首先应该进行的是?A. 测试用例设计B. 缺陷报告编写C. 测试计划制定D. 测试环境搭建33. 下列哪个选项是软件测试的基本原则之一?A. 测试应该是可重复的B. 测试应该在软件开发周期的早期进行C. 测试应该由经验丰富的测试人员执行D. 测试应该覆盖所有的功能点34. 在软件测试中,白盒测试和黑盒测试的区别是什么?A. 白盒测试关注程序的内部结构,黑盒测试关注程序的输入输出B. 白盒测试侧重于代码逻辑,黑盒测试侧重于软件功能C. 白盒测试通常需要程序员参与,黑盒测试不需要D. 白盒测试可以提高软件的质量,黑盒测试不能35. 在进行软件测试时,常用的静态分析技术有哪些?A. 代码审查B. 数据流分析C. 判定树法D. 判定图法36. 下列哪个选项是软件质量保证活动的一部分?A. 代码审查B. 单元测试C. 验收测试D. 性能测试37. 在软件测试中,自动化测试的优势是什么?A. 自动化测试可以取代手动测试B. 自动化测试可以提高测试效率C. 自动化测试可以在短时间内覆盖更多的测试用例D. 自动化测试可以减少人为错误38. 在软件测试中,测试用例通常包括哪些内容?A. 测试场景B. 测试步骤C. 测试数据D. 测试预期结果39. 下列哪个选项是软件测试与质量控制之间的关系?A. 质量控制是软件测试的一部分B. 质量控制是软件测试的前提C. 质量控制是软件测试的目标D. 质量控制与软件测试没有直接关系40. 软件测试的目的是什么?A. 评估软件的质量B. 降低软件开发风险C. 提高用户满意度D. A和B41. 在软件测试中,常用的测试方法有哪些?A. 功能测试B. 性能测试C. 兼容性测试D. 安全性测试E. A和B和C和D42. 黑盒测试与白盒测试的区别是什么?A. 黑盒测试关注软件的内部结构,白盒测试关注软件的实现细节B. 黑盒测试侧重于输入输出,白盒测试侧重于代码逻辑C. 黑盒测试通常用于产品发布前的验收测试,白盒测试用于开发过程中的代码审查D. 黑盒测试成本较低,白盒测试成本较高E. A和B43. 测试用例设计的基本原则包括哪些?A. 确保测试覆盖率B. 设计易于实施的测试用例C. 设计全面的测试用例D. 设计具有代表性的测试用例E. A和B和C和D44. 验证型测试与探索型测试的主要区别是什么?A. 验证型测试侧重于按照测试用例执行,探索型测试侧重于发现潜在问题B. 验证型测试通常在测试初期进行,探索型测试在测试过程中进行C. 验证型测试关注软件的功能是否符合预期,探索型测试关注软件的缺陷和漏洞D. 验证型测试成本较低,探索型测试成本较高E. A和C45. 回归测试的目的是什么?A. 确保软件的修改不会引入新的错误B. 重新验证已修复的错误C. 测试软件的新版本D. A和B46. 质量保证的主要活动包括哪些?A. 质量规划B. 质量控制C. 质量改进D. A和B47. 在敏捷开发中,测试工作通常如何进行?A. 采用瀑布模型B. 采用迭代式开发C. 采用测试驱动开发D. A和B48. 定义一下软件测试中的“三包”原则。

长江大学软件质量保证与测试复习资料

长江大学软件质量保证与测试复习资料

单项选择题:1.在软件生命周期的哪一个阶段,软件缺陷修复费用最低 ( A )(A)需求分析(编制产品说明书)(B)设计(C) 编码(D)产品发布2.单元测试中用来模拟被测模块调用者的模块是( C )(A) 父模块B)子模块(C)驱动模块(D)桩模块3.为了提高测试的效率,应该( D )(A)随机地选取测试数据;(B)取一切可能的输入数据作为测试数据;(C)在完成编码以后制定软件的测试计划;(D)选择发现错误可能性大的数据作为测试数据。

4.侧重于观察资源耗尽情况下的软件表现的系统测试被称为( B )(A)强度测试(B)压力测试(C) 容量测试(D)性能测试5.必须要求用户参与的测试阶段是( D )(A)单元测试(B)集成测试(C) 确认测试(D)验收测试6.软件测试员究竟做些什么。

( C )(A)软件测试员的目的是发现软件缺陷(B)软件测试员的目的是发现软件缺陷,尽可能早一些(C)软件测试员的目的是发现软件缺陷,尽可能早一些,并确保其得以修复(D)软件测试员的目的是发现软件缺陷,尽可能早一些,并将其得以修复7.下面四种说法中正确的是( C )(A)因果图法是建立在决策表法基础上的一种白盒测试方法;(B)等价类划分法是边界值分析法的基础;(C)健壮性等价类测试的测试用例要求在有效等价类中取值;(D)在任何情况下做黑盒测试皆应首先考虑使用错误推断法。

8.不属于单元测试内容的是( A )(A)模块接口测试(B)局部数据结构测试(C) 路径测试(D)用户界面测试9.划分软件测试属于白盒测试还是黑盒测试的依据是( C )(A)是否执行程序代码(B)是否能看到软件设计文档(C)是否能看到被测源程序(D)运行结果是否确定10.下列项目中不属于测试文档的是( C )(A)测试计划(B)测试用例(C) 程序流程图(D)测试报告11.几乎没有产品计划、进度安排和正规的开发过程的软件开发模式是( B )(A)大棒模式(B)边写边改模式(C) 瀑布模式(D)快速原型开发模式12.如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了该软件的( A )(A)判定覆盖(B)条件覆盖(C) 判定/条件覆盖(D)组合覆盖13.下列说法不正确的是( D )(A)测试不能证明软件的正确性;(B)测试员需要良好的沟通技巧;(C)QA与testing属于一个层次的概念;(D)成功的测试是发现了错误的测试。

软件质量保证和测试复习资料(精)

软件质量保证和测试复习资料(精)

第1章软件质量保证和测试的背景IEEE关于软件质量的定义:软件质量是:·系统部件不见或者过程满足需求的规定需求的程度。

·系统、部件或者过程满足顾客或者用户需要或期望的程度。

ANSI关于软件质量的定义。

软件质量定义为“与软件产品满足规定的和隐含的需求的能力有关的特征和特征的全体” 具体包括:·软件产品中能满足用户给定需求的全部特性的集合。

·软件具有所有期望值的各种属性的集合。

·用户观得出的软件是否满足其综合期望的程度。

·决定所用软件在使用中将满足其综合期望程度的软件特性。

IEEE给出软件质量保证的定义,软件质量保证(SQA)是:(1)一种有计划的,系统化的行动模式,它是为项目或者产品符合已有技术需求提出充分信任所必需的。

(2)设计用来评价开发或者制造产品的过程的一组活动,与质量控制有区别。

软件测试是使用人工或者自动手段来运行或测试某个系统的过程,检验它是否满足规定的需求或者弄清预期结果和实际结果之间的差别。

随着时间的推移,修复软件缺陷的费用惊人的增长。

软件测试是软件质量保证的重要手段之一。

第2章软件质量工程体系软件质量控制的定义:软件质量控制是一组由开发组织使用的程序和方法,使用它可在规定的资金投入和时间限制的条件下,提供满足客户质量要求的软件产品并持续不断地改善开发过程和开发组织本身,以提高将来生产高质量软件产品的能力。

目标问题度量法:书P31页主要看看思想。

风险管理法:P32页图PDCA计划 Plan:确定参数要求实施 Do:根据要求展开活动检查 Check:通过评审、度量、测试,确认满足要求改进 Action:纠正参数要求,在开发软件质量保证控制模型参数:产品、过程、资源。

SQA(软件质量保证)是CMM(软件能力成熟度)2级一个重要关键过程区域,它是贯穿于整个软件过程的第三方审查活动,在CMM过程中从当重要角色。

简要描述几种常见的质量控制模型(见上):控制方法:风险避免:通过变更计划消除风险的触发条件,如采用成熟技术、增加资源减少软件范围等。

软件质量保证复习题

软件质量保证复习题

第十章软件质量保证一、复习要求1. 了解软件质量保证、质量保证活动与质量检验的概念。

2. 了解软件质量保证体系与质量保证的实施的概要。

3. 了解正式技术评审概要。

包括评审会议、设计质量和程序质量的评审。

4. 了解软件配置管理的概念。

包括配置项和基线概念、配置管理的主要工作。

5. 了解软件工程标准化的概念。

包括软件工程标准化意义、软件工程标准的制定与推行、软件工程标准的层次、软件工程的国家标准。

6. 了解软件文档的概念。

包括文档编制的要求、文档的作用、分类、文档的工作。

7. 了解软件过程与过程改进的概念。

包括过程分类与过程模型、剪裁过程、过程模型建造技术、软件过程改进。

8. 了解软件过程能力评估的CMM模型,包括过程成熟度的概念、软件机构的能力成熟度模型、关键过程域、关键实践的概念。

9. 了解ISO 9000国际标准。

包括质量管理、质量认证和质量审核的概念,ISO 9000系列标准的特点、科学依据、主要内容,以及ISO 9000-3标准。

二、内容提要1.软件质量保证(1) 质量保证的概念什么是质量保证?它是为保证产品和服务充分满足消费者要求的质量而进行的有计划、有组织的活动。

质量保证是面向消费者的活动,是为了使产品实现用户要求的功能,站在用户立场上来掌握产品质量的。

这种观点也适用于软件的质量保证。

软件的质量保证就是向用户及社会提供满意的高质量的产品。

进一步地,软件的质量保证活动也和一般的质量保证活动一样,是确保软件产品在软件生存期所有阶段的质量的活动。

即为了确定、达到和维护需要的软件质量而进行的所有有计划、有系统的管理活动。

它包括的主要功能如:▪制定和展开质量方针;▪制定质量保证方针和质量保证标准;▪建立和管理质量保证体系;▪明确各阶段的质量保证业务;▪坚持各阶段的质量评审;▪确保设计质量;▪提出与分析重要的质量问题;▪总结实现阶段的质量保证活动;▪整理面向用户的文档、说明书等;▪鉴定产品质量,鉴定质量保证体系;▪收集、分析和整理质量信息。

软件质量保证与测试知识点

软件质量保证与测试知识点

软件质量保证与测试知识点1. 软件质量保证概述软件质量保证是指通过一系列的活动和过程,确保软件产品满足用户需求、符合规范标准,并具有高质量、高可靠性的特性。

软件质量保证涉及到整个软件开发过程中的各个环节,包括需求分析、设计、编码、测试等。

2. 软件测试概述软件测试是指通过运行程序、检查输出结果和比较预期结果来评估系统或组件是否满足特定的需求。

软件测试是确保软件质量的重要手段之一,它可以帮助发现并修复潜在的缺陷和问题,提高软件的可靠性和稳定性。

3. 软件测试的基本原则•测试应该从需求开始:测试活动应该与需求分析活动同步进行,并且测试用例应该基于明确的需求规格。

•完全性与正确性:测试用例应该覆盖所有可能的输入组合和边界情况,以确保系统在各种情况下都能正常工作。

•早期测试:尽早进行测试可以帮助发现并修复问题,减少后期的成本和风险。

•逐步测试:测试应该按照逐步递增的方式进行,先测试基本功能,再测试扩展功能。

•隔离性:每个测试用例应该是相互独立的,不受其他测试用例的影响。

4. 软件测试的类型•单元测试:对软件中的最小可测单元进行测试,如函数、方法等。

•集成测试:将多个单元组合在一起进行测试,检查它们之间的接口和交互是否正常。

•系统测试:对整个系统进行全面的功能和性能测试,验证系统是否满足需求。

•验收测试:由用户或客户进行的最终确认,验证软件是否符合用户需求和预期。

5. 软件质量保证与软件测试之间的关系软件质量保证和软件测试是紧密相关的概念。

软件质量保证是通过一系列活动来确保软件产品质量,而软件测试则是其中一个重要的活动。

软件质量保证包括了需求分析、设计、编码、配置管理等多个方面,而软件测试则是在开发过程中检查和评估系统是否满足需求。

在软件质量保证过程中,软件测试起到了至关重要的作用。

通过软件测试,可以发现并修复潜在的缺陷和问题,提高软件的可靠性和稳定性。

软件测试可以帮助开发团队确认系统是否满足用户需求,并提供反馈和改进建议。

软件质量保证与测试_复习资料

软件质量保证与测试_复习资料

40、缺陷产生的原因包括( )。 A、交流不充分及沟通不畅;软件需求的变更;软件开发工具的缺陷 B、软件的复杂性;软件项目的时间压力 C、程序开发人员的错误;软件项目文档的缺乏 D、以上都是 41、如果某测试用例集实现了某软件的路径覆盖,那么它一定同时实现了 该软件的 ( ) A、判定覆盖 B、条件覆盖 C、判定/条件覆盖 D、组合覆盖
A. 测试策略
B. 测试用例
C. 测试时间安排
D. 测试标准
5、以下哪句话是不正确的:
A、测试过的软件就没有缺陷
B、测试的目的是尽可
能多的发现程序中的缺陷 C、成功的测试在于发现了迄今尚未发现的缺陷 序是否符合需求
D、测试是为了验证程
6、下面哪项对验收测试的描述不正确?( )
A、与系统测试不同的是以客户业务需求为标准来进行测试
30、黑盒测试技术中不包括( )。
A、等价类划分
B、边界值分析
覆盖
C、错误推测法
D、逻辑
31、划分软件测试属于白盒测试还是黑盒测试的依据是 ( )
A、是否执行程序代码
B、是否能看到软件设计文档
C、是否能看到被测源程序
D、运行结果是否确定
32、集成测试的测试用例是根据(
A、需求分析
B、源程序
)的结果来设计。
36、经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现
并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应
该( )。
A、较少 B、较多 C、相似
D、不确定
37、某次程序调试没有出现预计的结果,下列( )不可能是导致出错的
原因。
A、变量没有初始化
B、编写的语句书写格式不规范
C、循环控制出错

软件测试与质量保证专升本试题

软件测试与质量保证专升本试题一、选择题1. 下列哪项不属于软件测试的基本原则?A. 测试应该进行尽早B. 100%的覆盖率是必要的C. 测试和开发应该独立D. 测试应该可重复2. 下列哪项不属于黑盒测试方法?A. 等价类划分B. 边界值分析C. 状态转换D. 回归测试3. 下列哪项是软件测试的最终目标?A. 检测错误B. 减少错误C. 完全消除错误D. 无法判断4. 在软件开发的哪个阶段开始进行软件测试?A. 需求分析阶段B. 设计阶段C. 编码阶段D. 测试阶段5. 下列哪项是软件测试的一个阶段?A. 故障定位B. 性能测试C. 迭代测试D. 回归测试二、判断题1. 白盒测试只关注输入和输出,不关注程序内部结构。

( )2. 集成测试是将已经测试过的组件结合成为一个整体进行测试。

( )3. Alpha测试是在软件发布之前进行的对整个系统的测试。

( )4. 边界值分析适用于黑盒测试和白盒测试。

( )三、简答题1. 请简要解释黑盒测试和白盒测试的区别。

2. 请简要解释测试用例设计的目的及常用的测试用例设计技术。

3. 请简述软件缺陷的定义和软件测试的目标。

4. 请解释回归测试的概念,并说明在软件开发周期中何时进行回归测试。

四、论述题请结合你对软件测试的理解,论述软件测试和质量保证在软件开发中的重要性,并提出至少三个具体的理由或观点来支持你的论述。

注意:此部分为论述题,请根据给定的题目进行论述,并不需要再次重述题目。

答案:一、选择题1. B2. D3. B4. D5. C二、判断题1. 错误 (黑盒测试关注程序内部结构)2. 正确3. 错误 (Alpha测试是在软件发布之后进行的对整个系统的测试)4. 错误 (边界值分析仅适用于黑盒测试)三、简答题1. 黑盒测试和白盒测试的区别:黑盒测试是基于软件外部行为和功能的测试方法,测试人员不需要关注程序的内部结构和实现方式,主要关注程序对输入数据的处理和产生的输出结果是否符合预期。

软件评测师考试复习资料

软件评测基础知识软件测试基本概念软件质量与软件测试:软件测试是软件质量保证工作的一个重要环节。

软件测试和软件质量保证是软件质量工程的两个不同层面的工作。

软件测试只是软件质量保证工作中的一个重要环节。

质量保证(QA )的工作是通过预防、检查与改进来保证软件的质量,它所关注的是软件质量的检查和测量。

软件测试所关心的不是过程的活动,而是对过程的产物以及开发出的软件进行剖析。

软件测试定义:软件测试就是在软件投入运行前对软件需求分析、软件设计规格说明和软件编码进行的查错(包括代码执行活动与人工活动)。

软件测试是为了发现错误而执行程序的过程。

软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序的错误。

是在软件投入运行前,对软件需求分析、软件设计规格说明和软件编码的最终复审,是软件质量保证的关键步骤。

软件测试目的:(1)测试是一个为了寻找错误而运行程序的过程;(2)一个好的测试用例是指很可能找到迄今为止未发现的错误的用例;(3)一个成功的测试是指揭示了迄今为止尚未发现的错误的测试。

软件测试的目标是能够以耗费最少时间与最小工作量找出软件系统中潜在的各种错误与缺陷。

测试只能证明程序中错误的存在,但不能证明程序中没有错误。

软件测试原则:(1)尽早地并不断地进行软件测试;(2)程序员或程序设计机构应避免测试自己设计的程序;(3)测试前应当设定合理的测试用例;(4)测试用例的设计不仅要有合法的输入数据,还要有非法的输入数据;(5)在对程序修改之后要进行回归测试;(6)充分注意测试中的群集现象;(7)妥善保留测试计划、全部测试用例、出错统计和最终分析报告,并把它们作为软件的组成部分之一,为软件的维护提供方便;(8)应当对每一个测试结果做全面检查;(9)严格执行测试计划,排除测试的随意性。

软件测试对象:软件的测试不仅仅是程序的测试,软件的测试应贯穿于整个软件生命同期中。

软件测试与质量保证期末复习资料整理

复习提纲第一部分软件测试概述1、软件测试得背景1、1软件危机与软件质量软件质量保证SQA,软件测试ST;1、2 软件缺陷 (分类,来源,累积与放大效应)●常见得软件缺陷:1.软件没有达到规格说明书表明得功能2.软件出现了规格说明书指明不会出现得问题3.软件没有达到规格说明书虽未指明,但应该达到得功能4.软件功能超出规格说明书指明得范围5.软件测试人员或者用户认为软件难以理解、不易使用、运行速度慢。

●原因:1.软件得需求规格说明书;2.软件得设计;3.代码得错误●累积与放大效应:前期得软件缺陷会在后期逐步扩大1、3 软件测试得意义为了发现软件缺陷,软件测试必不可少;开销占总成本得30%~50%;2、软件测试得含义2、1什么就是软件测试就是为了发现错误而执行程序得过程。

2、2软件测试得目得发现问题;对质量或可接受性做出判断;2、3 软件测试得对象1.需求分析2.概要设计3.详细设计4.编码2、4测试≠调试测试→发现错误→调试;这就是一个交叉循环得过程;测试就是一种检验,有一套完整得理论,不需要了解设计细节,有非程序设计者完成,且测试得设计与执行能够自动化;2、5 软件测试得特征●风险性——彻底测试程序就是不可能得;●不修复原则——并非所有软件缺陷都需要修复;●群集现象——错误得集中;●寄生虫性——找到缺陷越多,残存得缺陷越多3、软件测试得过程3、1软件测试得生命周期需求规格说明→设计→编码→测试→缺陷分类→缺陷隔离→缺陷解决3、2软件测试得步骤1、制定测试计划2、设计测试用例与测试过程3、运行测试用例(核心)4、评估测试结果3、3 测试用例=输入+预期输出3、4 通过维恩图理解测试用例—-相交得地方尽可能大3、5测试用例得设计–3、5、1 功能性测试(黑盒测试)●依据于软件得规格说明;●与软件得具体实现无关;●优:并行进行,测试用例与实现得改变无关;●缺:用例冗余度大;会有漏洞,不能发现多余缺陷;–3、5、2结构性测试(白盒测试)●依据于程序实现;●利用程序内部得逻辑结构;●优:具有覆盖率指标;●缺:不能发现遗漏缺陷;4.错误与缺陷分类●以出现相应错误得开发阶段来划分;●以相应失效产生得后果来划分;●以解决难度来划分;●以不解决会产生得风险来划分5.软件测试得级别1.单元测试——详细设计信息,白盒测试为主;2.集成测试-—概要设计信息,模块得组合测试;3.系统测试——软件需求;4.确认测试-—依照需求规格说明书;5.验收测试——用户参与,黑盒测试;6.软件测试得分类●静态测试-—不运行被测试程序;●动态测试—-运行被测试得程序;●自动测试——利用自动化测试工具;●人工测试——人工走查与代码审查;第二部分黑盒测试ﻫ1、边界值测试 (书:第5章)•边界值分析(依据,含义,方法)●含义:针对各种边界情况设计测试用例;●依据:大量得错误就是发生在输入或输出范围得边界上;●方法:以基于但却像与输入空间得边界值分析,设有n个输入变量,则对应有4n+1个测试用例.●局限性:只适用于变量之间没有依赖得情况;不适用于布尔变量;•健壮性测试●含义:例外情况时得系统表现;n个变量对应6n+1个测试用例;•最坏情况测试●用例为边界值集合得笛卡儿积(5n个测试用例)•健壮最坏情况测试——7n个测试用例•特殊值测试--主观性与有效性•随机测试-—使用随机数生成器,直到每种输出至少出现一次;2、等价类测试 (书:第6章)•等价类测试得思想⏹依据:集合得划分,无冗余(不代表测试用例不冗余),完备性;⏹基本思想:①划分等价类;②从中选取测试用例,以覆盖所有得等价类;⏹关键:如何划分等价类;⏹特点:典型得黑盒测试方法•有效/无效等价类●有效等价类:合理得输入数据,就是否实现了预期得功能;●无效等价类:无意义得输入数据,检验程序对于无效数据得处理;•强/弱,健壮/一般等价类测试●弱一般等价类:单缺陷假设,不考虑无效值,不完备●强一般等价类:多缺陷假设,不考虑无效值,不完备●弱健壮等价类:单缺陷假设,考虑无效值,不完备;●强健壮等价类:多缺陷假设,考虑无效值,完备;•基于输入/输出得等价类测试•等价类测试得经验•根据输入条件,划分等价类得原则●如果确知以划分得等价类中得各元素在程序中得处理方式不同,则应进一步划分成更小得等价类。

《软件测试与质量保证》期末复习重点

《软件测试与质量保证》期末复习重点一、题型选择题 20分 20题判断题 10分 10~15个填空题 10分 10空简答题 15分 3个分析题 10分 2个综合题 35分 2个注:逻辑覆盖、等价类划分、自动化测试不会有大题(了解概念即可)二、重点1. 选择与填空软件测试的对象:既包括源程序,又包括需求规格说明、概要设计说明、详细设计说明软件测试的基本职责:验证、确认软件测试技术分类:按是否需要执行被测软件划分:静态测试、动态测试按测试用例设计方法划分:黑盒测试、白盒测试(详见下方)按测试策略和过程划分:单元测试、集成测试、确认测试、系统测试、验收测试静态测试:代码审查、走查,桌面检查;动态测试:运行软件测试与调试的区别:测试的目的是发现错误,调试的目的是修正错误测试的对象是各阶段产生的所有产品,调试的对象主要是源代码测试的过程是有计划的、可以重复的,调试的过程是随机的不可重复的调试不能完全替代测试测试与调试的共同点:为了提高软件质量测试阶段与开发过程的对应关系测试阶段开发过程测试重点单元测试详细设计编码错误集成测试概要设计接口错误确认测试需求分析合乎用户预期系统测试需求定义整体有效运行V模型:明确地表明了测试过程中存在的不同级别,并且清楚地描述了这些测试阶段和开发过程期间的对应关系W模型:V模型的改进,更好地体现了软件开发与软件测试工作的同步性,指出了测试伴随着整个软件开发周期,测试的对象不仅仅是程序,还包括需求和设计。

每个软件开发活动结束后就可以执行相应的测试H模型:从微观的角度来看待软件测试的过程回归测试:测试由于修正缺陷而更新的应用程序,以确保修正了旧缺陷而未引入新缺陷α测试:由用户在开发环境下进行的测试,也可以是开发机构内部的用户在模拟实际操作环境下进行的测试。

用户在开发者受控的环境下进行测试。

β测试:由多个用户在一个或多个用户的实际使用环境下进行的测试。

开发者通常不在测试现场。

单元测试中用来模拟被测模块调用者的模块是驱动模块单元测试中用来代替所测模块调用的子模块是桩模块使用白盒测试方法时,确定测试用例应根据程序的内部逻辑和指定的覆盖标准。

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

第一章软件质量1.软件定义:软件是计算机系统中与硬件相互依存的另一部分,它是程序、数据及相关文档的集合。

【简答】2.软件特点a.软件是开发产生的,而不是用传统方法制造的;b.软件不会像硬件一样有磨损;c.很多软件不能通过已有构件组装,只能自己定义。

3.软件分类:按照使用范围不同,把软件划分为项目软件和产品软件。

4.IEEE软件缺陷的定义a.从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;b.从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。

5.软件缺陷产生的原因a.项目期限的压力;b.产品的复杂度;c.沟通不良;d.开发人员的疲劳、压力或受到干扰;e.缺乏足够的知识、技能和经验;f.不了解客户的需求;g.缺乏动力。

6.IEEE的软件质量定义【简答】a.系统、部件或过程满足规定需求的程度;(Crosby 1979)b.系统、部件或过程满足顾客或客户需求/期望的程度。

(Juran 1988)7.Pressman的软件质量定义:符合明确陈述的功能/性能需求、明确文档化了的开发标准和所有专业开发预期的隐含特性。

【简答】8.Crosby, Juran, Pressman软件质量定义的比较【基本原理和方法】(必考)a.Crosby的定义指的是写好的软件符合由顾客和它的专业组编制的规格说明书的程度。

这也意味着包含在规格说明中的错误是不予考虑的,也不降低软件质量—显然这是不足的。

[1分]b.Juran的定义旨在达到顾客满意度,这就要求对检查改正顾客的需求规格书投入大量工作。

但该定义的主要缺点是免除了顾客对软件规格书准确性、完备性的责任。

[1分]c.Pressman定义为SQA提出了要由开发者满足的三个要求:特定功能需求,它主要是指软件系统的输出;在合同中提出的软件质量标准;反映当今水平的专业方法的良好软件工程方法的发展水平。

实际上,Pressman定义提供了测试满足需求程度的操作方向。

[2分]9.软件质量的内容;各维度下软件质量标准a.产品质量,它的软件质量标准有McCall 模型,Boehm 模型,ISO 9126 模型;b.过程质量,它的软件质量标准有软件能力成熟度模型CMM,国际标准过程模型ISO 9000,软件过程改进和能力决断SPICE。

10.MaCall软件质量模型11.应用MaCall模型分析软件质量参考试卷MaCall软件质量模型中软件质量维度;各个维度软件质量因子的定义【简答】{【基本原理和方法】McCall软件质量模型的软件质量维度;各质量维度下软件质量因素有哪些?}a.产品运行维度:正确性:一个程序满足它的需求规约和实现用户任务目标的程度。

可靠性:一个程序满足其所需的精确度,完成它的预期功能的程度。

效率:一个程序完成其功能所需的计算资源和代码的度量。

完整性:对未授权人员访问软件或数据的可控制程度。

实用性:学习、操作、准备输入和解释程序输出所需的工作量。

b.产品修改维度:可维护性:定位和修复程序中一个错误所需的工作量。

可测试性:测试一个程序以确保它完成所期望的功能所需的工作量。

灵活性:修改一个运行的程序所需的工作量。

c.产品转移维度:可移植性:把一个程序从一个硬件或软件系统环境移植到另一个环境所需的工作量。

可重用性:一个程序可以在另外一个应用程序中重用的程度。

互操作性:连接一个系统和另一个系统所需的工作量。

12.软件质量管理的内容【简答】a.软件质量保证(Quality Assurance)建立起机构质量规程和标准的整体框架,这是生产高质量软件的保证。

b.软件质量规划(Quality Planning)从这个框架中选择适当的质量规程和标准,进行改写使之适应特定软件项目。

c.软件质量控制(Quality Control)定义并设计软件过程,确保软件开发团队严格遵守项目质量规划和标准。

d.软件质量改进14.软件质量成本的定义、构成【简答】定义:质量成本是为确保和保证满意的质量而发生的费用以及没有达到满意的质量所造成损失的总和,即包括保证费用和损失费用。

构成:质量成本=质量保证成本+损失成本质量保证成本:为保证满意的质量而发生的费用损失成本:没有达到满意的质量所造成损失质量成本=质量预防成本+评价成本+失效成本保证成本=预防成本+评价成本预防成本:预防产生质量问题(软件缺陷)的费用,是企业的计划性支出,专门用来确保在软件产品交付和服务的各个环节不出现失误。

评价成本:是指在交付和服务环节上,为评定软件产品或服务是否符合质量要求而进行的试验、软件测试和质量评估等所必需的支出。

失效成本:分为内部的和外部的,如果在软件发布之前发现质量问题,而要求重做、修改和问题分析所带来的成本属内部失效成本,包括修正软件缺陷、回归测试等,以及因产品或服务不合要求导致的延误。

15.软件质量标准的益处、分类(包括认证标准和评估标准){按照软件质量标准的内容和重点,把软件质量标准划分为认证标准和评估标准。

【简答】} 益处:a.有能力应用最高专业级别的软件开发与维护方法学和规程;b.开发组之间、尤其是开发与维护组之间更好的互相理解与协作;c.软件开发者和外部参与方之间更大的合作;d.基于采用著名开发与维护标准作为合同的一部分,使供货商和顾客之间能更好地互相理解与合作。

认证标准:认证标准的范围是由认证的目的确定的,其目的在于:a.使软件开发机构能够证实其有能力确保软件产品或维护服务符合可接受的质量需求。

这是通过一个外部的实体做出认证实现的;b.用作顾客和供货商对供货商的质量管理系统评价一致性的基础。

它可以通过由顾客实施的对供货商的质量管理系统的质量审计实现;c.支持软件开发机构的工作,通过符合标准的需求来改进质量管理系统性能和增强顾客满意度。

评估标准:a.用做软件开发与维护机构对其进行软件开发项目的能力的自我评估工具;b.用做改进开发与维护过程的工具,标准指出过程改进的方向;c.帮助采购机构确定潜在供货商的能力;d.通过罗列资格认证与培训计划课程,指导评估人员的培训。

16.ISO 9000-3质量管理系统的基本原理【基本原理和方法】a.顾客关注。

机构依靠它们的顾客,所以应当理解当前的与未来的顾客需要;b.领导--建立并维护一个积极的内部环境中行使领导权,以实现机构的目标;c.人们的投入。

人是机构之本,他们在各机构层次的全身心投入使得他们的能力能用于为机构谋益;d.过程方法--当把活动与资源作为过程管理的时候,就更有效地达到理想的结果;e.管理理的系统方法--把过程作为一个系统管理;f.持续改进--对全面性能正在进行的改进应当在机构的日程上优先;g.决策制定的实在方法。

有效决策是建立在信息分析的基础上的;h.相互支持的供货商关系。

一个机构和它的供货商是互相依赖时,相互支持的供货由关系增强双方创造增加值的能力。

ISO 9000-3质量管理标准的认证过程{【基本原理和方法】如何通过ISO 9000-3标准认证?}a.制订获得认证的活动计划b.建立机构SQA系统c.接受认证审计d.维持ISO认证的规程18.软件过程能力、软件过程成熟度、软件过程能力成熟度等级的定义【简答】软件过程能力:描述开发组织或项目组遵循其软件过程能够实现预期结果的程度,它既可对整个软件开发组织而言,也可对一个软件项目而言。

软件过程成熟度:一个特定软件过程被明确且有效地定义、管理、测量和控制的程度。

软件过程能力成熟度等级:软件开发组织在走向成熟的途中几个具有明确定义的表示软件过程能力成熟度的平台。

19.CMM的基本思想、作用、内容(即软件过程成熟度等级的划分,各等级下软件过程的特点){【基本原理和方法】CMM的基本思想CMM软件质量等级}思想:a.由于软件危机等问题是由我们管理软件过程的方法不当引起的,所以新软件技术的应用并不会自动提高软件的生产率和质量。

b.能力成熟度模型有助于软件开发机构建立一个有规律的、成熟的软件过程。

改进的软件过程将开发出更高质量的软件,使更多的软件项目免受时间和经费超支之苦。

作用:a.指导软件机构通过确定当前的过程成熟度并识别出对过程改进起关键作用的问题,从而明确过程改进方向和策略。

b.通过集中开展过程改进的方向和策略相一致的过程改进活动,软件机构便能稳步而有效的改进其软件过程,使其软件过程能力得到循序渐进的提高。

c.对软件过程的改进,是在完成一个又一个小的改进基础上不断进行的渐进过程,而不是一蹴而就的彻底革命。

内容:CMM把软件过程从无序到有序的进化过程分成5个阶段,并把这些阶段排列形成5个逐层提高的等级,如下图所示:初始级:软件过程是无序的,有时甚至是混乱的,对软件过程几乎没有定义,软件项目成功与否取决于个人努力。

可重复级:建立了基本的项目管理过程(过程模型),可跟踪成本、进度和质量特性。

已经建立了必要的过程规范,能重复早先类似项目的实践经验成功完成新项目。

达到2级的一个目标是使项目管理过程稳定,从而使得软件机构能重复以前在成功项目中所进行过的软件项目工程实践。

处于第2级成熟度的软件机构的过程能力可以概括为:软件项目的策划和跟踪是稳定的,已经为一个有纪律的管理过程提供了可重复以前成功实践的项目环境。

软件项目工程活动处于项目管理体系有效控制之下,执行着基于以前项目准则且合乎现实的计划。

已定义级:已经定义了完整的软件过程,软件过程已文档化、标准化。

所有项目均使用经批准的、文档化的标准软件过程来开发和维护软件。

这一级别包含第2级的全部特征。

在第3级成熟度的软件机构中,有一个固定的过程小组从事软件过程工程活动。

当需要时,过程小组可以利用过程模型进行过程例化活动,还可以推进软件机构的过程改进活动。

在该机构内实施了培训计划,能够保证全体项目负责人和开发人员具有完成承担的任务所要求的知识和技能。

处于第3级的软件机构的能力成熟度可以概括为:无论是管理活动,还是工程活动都是稳定的。

软件开发成本和进度以及产品的功能都受到控制,而且软件产品质量具有可追溯性。

已管理级:软件机构对软件过程、软件产品都建立了定量的质量目标,所有项目的重要过程活动都是可度量的。

该机构收集了过程度量和产品度量的方法并加以运用,对软件过程和产品都有定量的理解与控制。

这一级包含了第3级的全部特征。

处于第4级的软件机构的能力成熟度可以概括为:处于4级成熟度的软件机构,软件过程是可度量的,软件过程在可度量的范围内运行。

这一级的过程能力允许软件机构在定量的范围内预测过程和产品质量趋势,在发生偏离时可以及时采取措施予以纠正,并且可以预期软件产品是高质量的。

优先级:处于5级的软件机构的能力成熟度可以概括为:软件过程是可优化的。

这一级别的软件机构能够持续不断的改进其过程能力,既对现行的过程实例不断改进和优化,又借助所采用的新技术、新方法来实现未来的过程改进。

相关文档
最新文档