软件测试过程
2017-01-07 17:02:41 0 举报
AI智能生成
软件测试过程
作者其他创作
大纲/内容
测试阶段划分
单元测试
概念:针对软件基本组成单元,软件最小单位来测试来进行检测的工作
目的:检测软件模块以《详细设计说明书》LLD=low level design为符合标准
集成测试
概念:将所有模块按照概要设计要求组装成为子系统,系统组装后对模块间的接口是否正确而测试。
目的:检测软件对《概要设计说明书》HLD high level design的符合程度
系统测试
概念:将集成好的软件系统,作为整个计算机的一个元素,是对计算机系统进行的测试工作。
目的:检测软件针对《需求规格说明书》SRS software requirement specification 做比较,软件与需求的定义是否存在不符合或矛盾当中。
单元测试、集成测试、系统测试比较
测试方法不同
单元测试属于《白盒测试》范畴;注释:白盒测试是看得见内部一种测试。
集成测试属于《灰盒测试》范畴;注释:灰盒介于白盒与黑盒之间的测试。既有白也有黑。
系统测试属于《黑盒测试》范畴;注释:黑盒是一种看不见的,测试;注重输入——输出的。
测试范围不同
单元测试主要测试:单元内部的数据结构、逻辑控制、异常处理
集成测试主要测试:模块之间的接口和接口数据传递关系,以及模块组合后的整体功能
系统测试主要测:整个系统对于需求的符合程度。
评估基准不同
单元测试评估基准 :逻辑覆盖率
集成测试评估基准:接口覆盖率
系统测试评估基准:测试用例对需求规格的覆盖率
回归测试:
在测试或其他活动缺陷经过修改后,进行的回归测试
目的:验证缺陷得到了一个正确的修复;同时系统的变更没有影响以前的功能。
注释:回归测试可以发生在任何一个阶段,包括单元测试、集成测试、系统测试
回归测试的策略
全重复测试:重新执行所有在前期测阶段建立的测试用例,来确定问题的修改的正确性和修改带来扩散局部性。。
选择性重复测试:既有选择地重新执行部分在前期测试阶段的测试用例,来测试被修改的程序,具体可分为:覆盖修改法和周边影像法。
覆盖修改法:仅仅针对被修改的部分,进行的回归测试,特点:效率高。
缺点:无法保证修改是否影响别的功能。
该方法在进度压力很大或者结构设计耦合度很小的状态下可以使用。
指标达成法: 这是一种类似于单元测试的方法,在重新执行测试之前,先确定一个要达成的指标,如修改部分代码100%
覆盖率、与修改有关的接口60%的覆盖率等,基于这种要求选择一个最小的测试用例集合。
覆盖率、与修改有关的接口60%的覆盖率等,基于这种要求选择一个最小的测试用例集合。
周边影响法:不但要包含覆盖修改法确定的用例,还需要分析修改的扩散影响,具体分析修改过的对周边没有影响。
回归测试流程
回归的手工测试:
定制型项目(一次性)
周期短的项目
业务规则复杂的项目
美观、声音y、易用性测试
测试很少运行
软件不稳定
设计物理交互
回归测试的自动化
产品型项目:如大型医疗设备
增量型开发、持续集成项目
能够自动编辑、自动发布的系统
回归测试
多次重复、机械性动作:系统性能方面的测试
需要频繁运行测试:如冒烟测试
验收测试
测试完成时候,和配置审查完成之后,就可以《验收测试》
验收测试是以用户为主的测试,验收组由项目组成员、用户代表等组成
验收测试原则上在用户所在地进行,但如经用户同意也可以在公司内模拟用户换机进行。
验收测试根据合同、《需求规格说明书》、或《验收测试计划》对成品进行验收测试
验收测试结果有两张情况:
软件功能、性能等质量特性与用户的要求一致,软件可以接受。
软件功能、性能等质量特性与用户的要求有差距,不被用户接受
α 测试
用户在开发环境下进行的测试
开发人员在模拟实际操作环境下进行的测试
因为开发者坐在旁边,随时记下错误,是可控环境下进行的测试
目的:主要是评审软件产品各种特性(功能、局域、可用性、可靠性、性能)等
β测试
仅仅是多个用户在个或者说多个用户在实际使用环境下进行的测试。
没有开发者,是属于无法控制环境下进行的软件
测试过程模型
验收过程
保证产品正确的实现了特定功能。
确认结果
保证生产的软件产品与用户需求。
测试过程模型之VV模型
V&v模型实现了测试设计(计划、设计、实现)和测试执行的分离
测试执行的顺序与开发活动相反
单元测试的四个小阶段
单元测试计划阶段
输入
输出
入口
出口
单元测试设计阶段
输入
输出
入口
出口
单元测试实现阶段
输入
输出
入口
出口
单元测试执行阶段
输入
输出
入口
出口
集成测试的四个小阶段
集成测试计划阶段
输入
输出
入口
出口
集成测试设计阶段
输入
输出
入口
出口
集成测试实现阶段
输入
输出
入口
出口
集成测书执行阶段
输入
输出
入口
出口
系统测试的四个小阶段
系统测试计划阶段
输入
软件开发计划
软件测试计划
需求规格说明书
输出
系统测试计划
入口准则
需求规格说明书已经完成
且成立了需求规格基线
出口准则
系统测试计划评审并通过
系统测试设计阶段
输入
系统测试计划
需求规格说明书
输出
系统测试方案
入口准则
系统测试计划评审并通过
出口准则
系统测试方案评审并通过
系统测试实现阶段
输入
系统测试计划
系统测试方案
需求规格说明书
输出
系统测试用例
系统测试规程
系统测试预测试项
入口准则
系统测试方案评审并通过
出口准则
系统测试用例、系统测试规程、
系统测试预测试项评审并通过
系统测试执行阶段
输入
系统测试计划
系统测试方案
系统测试用例
系统测试预测试项
输出
系统预测试报告
系统测试报告
缺陷报告
入口准则
系统测试用例、系统测试规程、
系统测试预测试项评审并通过,
出口准则
集成测试执行结束
系统测试报告评审并通过
常见系统测试的分类
功能性测试
包括(配置测试、恢复性测试、备份测试)
是软件中最基础的测试
主要根据产品的需求规格说明书SRS
和测试需求列表
验证产品的功能实现是否符合产品要求
目标:
是否有不正确的或遗漏的功能
功能是否满足用户需求和系统设计的隐藏要求
输入能否正确接受?能否正确输出结果
GUI测试
(可用性测试)
性能测试
(压力测试、恢复性测试、容量测试)
概念:
用来测试软件在集成系统中的运行性能,包括系统
资源超负荷,超额数据总量等情况下的运行结果
目标:度量系统各种指标,确认系统有无各种性能瓶颈
性能测试必须要有工具支持,可以自行开发,
也可以借助专业测试攻击,loadrunner/wedload/ sikperformer
兼容性测试
概念 :
考虑北侧软件在其他软件(如操作系统)
后硬件设备下的运行情况
目标:两个方面:
与辅助软件的结合情况(操作系统,其他应用程序,测试软件,监控软件,浏览器等
与硬件设计的结合情况--由于兼容性测试对硬件要求较多,一般无特殊要求都只会针对软件要求来做测试。
安全性测试
概念:
用来验证集成在系统内部的保护机制是否保护系统不受非法侵入,
用来保护数据本身的完全性和保密性
广义的还包括物理安全和业务安全
范围:
一般可以从以下几个方面考虑安全
系统登录、用户管理、防火墙、系统数据
WEB安全(如加密、解密、数字签名等);
内部通讯协议;系统防毒测试等
(网络测试)
安装性测试
概念:
主要依据软件的测试特性列表、软件安装、配置文档,
设计安装过程的测试用例,发现软件安装过程中的错误
目的:
可找出安装软件的错误,也可找出安装手册的错误
文档测试
概念:
主要针对软件需求说明书、安装手册,配置指南,系统帮助等文档
进行测试(可扩展到在线帮助的范畴)测试主要内容主要是鞭策规范,内容正确性
无歧义性,完整性等
目的:
文档测试的目标是验证用户文档是正确的并且保证操作手册的过程能够正常工作
子主题
V&V模型揭示了软件测试活动分层和分阶段的本质特性,
0 条评论
下一页
为你推荐
查看更多