- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[高等教育]第6章 测试
第六章 测试 6.1测试的基础 6.2测试的管理 6.3非执行测试 6.4执行测试 6.5正确性证明 6.6何时停止测试 6.1 测试的基础 6.1.1 测试的概念 Glen Myers认为“程序测试为了发现程序中的错误而执行程序的过程”。 J.B.Goodenough认为测试除了要考虑正确性之外,还应该关心程序的效率、健壮性等因素,并且应该为调试提供更多的信息。 S.T.Redwine认为,软件测试应该包括几种测试覆盖,分别为:功能覆盖、输入域覆盖、输出域覆盖、函数交互覆盖、代码执行覆盖。 关于测试的范围,A.E.Westley将测试分为四个研究方向,即:验证技术(目前验证技术仅应用于特殊用途的小程序)、静态测试(应该从代码的静态测试往高层开发产品的静态测试发展)、测试数据选择、测试技术的自动化。 软件测试就是软件产品在软件投入运行之前,对软件需求分析、设计规格说明和编码实现的最终审查,是保证软件产品质量的关键。 通常对于软件测试的定义有以下两种描述: 定义1:软件测试是为了发现错误而执行程序的过程。 定义2:软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例,并利用这些测试用例运行程序以发现错误的过程。 在IEEE提出的软件标准术语中,软件测试被定义为: “使用人工和自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清楚预期结果与实际结果之间的差别。” 软件错误是指软件没有实现其最终用户合理预期的功能要求。 广义的软件测试由确认、验证和测试三个方面组成。 确认:是评估将要开发的软件产品是否正确无误、可行和有价值的。这里包含了对用户需求满足程度的评价,意味着确保一个待开发软件是正确无误的,是对软件开发构想的检测。 验证:是检测软件开发的每个阶段、每个步骤的结果是否正确无误,是否与软件开发各阶段的要求或期望的结果相一致。验证意味着确保软件正确无误地实现软件的需求。 测试:与狭隘的测试概念相统一。通常是经过单元测试、集成测试、确认测试和系统测试四个环节。 确认、验证、测试是相辅相成的,确认会产生验证和测试的标准,验证和测试通常又会帮助完成一些确认,特别是在系统测试阶段。 软件测试贯穿于软件定义和开发的整个过程。软件开发过程中所产生的需求规格说明、概要设计规格说明、详细设计规格说明以及源程序都是软件测试的对象。 6.1.2 指导测试的基本准则 (1) 所有测试都应该能追溯到用户需求。 (2) 远在测试开始之前就制定出测试计划。 (3) 把Pareto原理应用到软件测试中。 (4) 应该从“小规模”测试开始,并逐步进行“大规模”测试。 (5) 穷举测试是不可能的。 (6) 为了达到最佳的测试效果,应该由独立的第三方从事测试工作。 6.1.3 测试的分类 按照程序是否执行,可以分为基于非执行的测试和基于执行的测试。 基于非执行的测试的特征是测试软件而不运行测试用例,计算机并不真正运行被测试的程序。 基于执行的测试的主要特征是计算机必须真正运行北测试的程序,通过输入测试用例,对其运行情况进行分析,判断期望结果与实际结果是否一致。 按照设计用例的设计方法,可以分为黑盒测试法和白盒测试法。 黑盒测试法是在程序接口进行的测试,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据并产生正确的输出信息,程序运行过程中能否保持外部信息的完整性。黑盒测试又称为功能测试。 白盒测试法要求测试者完全知道程序的结构和处理算法。这种方法按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否都能按预定要求正确工作。白盒测试又称为结构测试。 按照开发阶段划分,可以分为单元测试、集成测试、确认测试、系统测试和验收测试。 单元测试是针对每个单元的测试,以确保每个模块都能够正常工作。 集成测试是对已测试过的模块进行组装进行测试,目的在于检验与软件设计相关的程序结构的问题。 确认测试是检验所开发的软件是否能够满足所有功能和性能需求。 系统测试检验软件产品能否与系统的其它部分协调工作。 验收测试(用户测试)是检验软件产品的最后一步,要求用户与软件开发人员共同参与。 按照测试实施组织划分,可以分为: 开发方测试 用户测试 第三方测试 按照是否使用工具软件,可以分为手工测试和自动测试。 手工测试是指软件测试工程师通过安装和运行被测软件,根据测试文档的要求,运行测试用例,观察软件运行结果是否正确的过程。 自动测试是指使用各种自动测试工具软件,通过运行事先设计的测试脚本等文件,测试被测软件,自动产生测试报告的过程。 6.2 测试的管理 软件测试管理的目的就是保证软件测试技术在项目中顺利地实施,并
您可能关注的文档
最近下载
- 巴克曼公司产品在石化行业技术应用201508.pdf VIP
- 希腊城邦和亚历山大帝国.pptx VIP
- (2025秋新版)部编版八年级语文上册全册教案.pdf
- 《品质》高尔斯华绥优秀实用详解.ppt VIP
- 2021年初中物理培优(重点高中自主招生 竞赛)难题练习第20章 电与磁.docx VIP
- 《游青城山记》原文及注释及译文及作者介绍及古诗解析及拓展题及答案.docx VIP
- 八年级(上)《三峡》文言知识挖空训练+参考答案+翻译.docx VIP
- 2024年秋新统编版道德与法治七年级上册全册课件(新版教材).pptx
- 公司战略规划模板.ppt
- 生命生态安全一年级下册教学计划 .pdf VIP
文档评论(0)