- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
软件测试培训 软件生命周期 什么是软件测试 什么是软件测试? 软件测试是在规定条件下对程序进行操作,以发现错误,对软件质量进行评估。 软件是由文档、数据以及程序组成,所以软件测试就不仅仅是对程序进行测试。 资料表明,60%以上的错误并不是程序错误,而是分析和设计错误,因此提倡软件全生命周期测试的理念 什么是软件质量 2001年ISO9126 软件满足规定或潜在用户需求的能力。 软件质量包括内部质量、外部质量、使用质量三部分。软件质量的好坏要从这三部分来衡量。 软件测试的目的 目的: 寻找软件的缺陷 跟踪修正软件缺陷 验证修正的软件缺陷 一个好的测试用例在于能发现至今未发现的错误。 一个好的测试是发现了至今未发现的错误。 软件测试的原则 原则: 所有的软件测试都应追溯到用户需求 尽早进行软件测试,早期发现和报告软件缺陷 完全测试是不可能的,测试需要终止 充分注意测试中的群集现象 全程测试,测试过程贯穿于整个项目的生命周期 测试独立与开发,开发人员不能测试自己的软件 测试是有组织、有计划、有步骤的,尽量避免软件测试的随意性。 软件测试分类 按照开发阶段 单元测试 集成测试 确认测试 系统测试 验收测试 软件测试分类 按照测试实施组织划分 开发方测试 用户测试 第三方测试 软件测试分类 按照测试技术划分 白盒测试 黑盒测试 灰盒测试 也可以分为: 静态测试 动态测试 软件测试过程模型 V模型 软件测试过程模型 W模型 软件测试过程模型 H模型 X模型 前置测试模型 软件测试生命周期测试策略 软件测试过程 测试信息流 测试信息流 软件配置:软件需求规格说明、软件设计规格说明、源代码等; 测试配置:测试计划、测试用例、测试程序等; 测试工具:测试数据自动生成程序、静态分析程序、动态分析程序、测试结果分析程序、以及驱动测试的测试数据库等等。 测试信息流 通过收集和分析测试结果数据,对软件建立可靠性模型 利用可靠性分析,评价软件质量: 软件的质量和可靠性达到可以接受的程度; 所做的测试不足以发现严重的错误; 如果测试发现不了错误,可以肯定,测试配置考虑得不够细致充分,错误仍然潜伏在软件中。 测试信息流 测试结果分析:比较实测结果与预期结果,评价错误是否发生。 排错(调试):对已经发现的错误进行错误定位和确定出错性质,并改正这些错误,同时修改相关的文档。 修正后的文档再测试:直到通过测试为止。 软件分析设计阶段的测试工作 分析设计阶段的测试工作是评审与测试相结合的过程,主要包括需求说明书评测、概要设计说明书评测、详细设计说明书评测以及软件编码规范评测等。 开发阶段的测试工作-单元测试 单元测试的内容 模块接口测试 局部数据结构测试 路径测试 错误处理测试 边界测试 内存泄漏测试 资源释放测试 开发阶段的测试工作-单元测试 单元测试的环境: 驱动模块(driver):相当于所测模块的主程序。它接收测试数据,把这些数据传送给所测模块,最后输出实测结果。 桩模块(stub):也叫存根模块。用以代替所测模块调用的子模块。 开发阶段的测试工作-单元测试 单元测试的工具 1、静态分析工具 2、NUNIT 3、内存泄漏检测工具 开发阶段的测试工作-集成测试 集成测试也叫组装测试或联合测试,组装时要考虑以下几个问题 1、把各模块组装时,在接口间传递的数据是否会丢失。 2、模块间的功能是否会互相影响。 3、各个子模块组装起来,能否达到预期的要求。 4、全局数据结构是否有问题。 5、单个模块的误差累积起来,是否会放大,甚至崩溃。 开发阶段的测试-集成测试 模块组装成为系统的方式: 一次性组装的方式 增殖式组装方式 混合增殖式 开发阶段的测试-集成测试 集成测试的组织和实施 集成测试是一种正规测试过程,必须精心设计,并与单元测试的完成时间协调起来。在制订测试计划时,应考虑下面的因素: 采用何种系统组装方法来进行集成测试 集成测试过程中连接各个模块的顺序 模块代码编制和测试进度是否与集成测试的顺序一致 测试过程中是否需要专门的硬件设备 开发阶段的测试-集成测试 集成测试完成的标志 成功地执行了测试计划中规定的所有集成测试 修正了所发现的错误 测试结果通过了专门小组的评审 确认测试 确认测试的任务是验证软件的功能和性能及其他特性是否与用户的要求一致。 确认测试一般由独立的第三方测试机构进行,主要测试内容包括: 进行有效性测试 软件配置复查 系统测试 系统测试是将通过集成测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际或者模拟运行环境下,对计算机系统进行一系列测试。 系统测试的目的在于通
文档评论(0)