单元测试用于验证特定代码段的功能,集成测验用于验证由多个程序员或编程团队创建的类,包或者子系统等,接下来主要介绍系统测试。系统测试的对象是一个完全集成的系统,用于验证系统是否满足要求,它是将经过j集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。
其主要内容包括:
功能测试。即测试软件系统的功能是否正确,其依据是需求文档,如《产品需求规格说明书》。由于正确性是软件最重要的质量因素,所以功能测试必不可少。
健壮性测试。即测试软件系统在异常情况下能否正常运行的能力。健壮性有两层含义:一是容错能力,二是恢复能力。
比较常见的、典型的系统测试包括恢复测试、安全测试、压力测试。下面对这几种测试进行一一介绍:
常见、典型的系统测试:
1)恢复测试
恢复测试主要检查系统的容错能力。当系统出错时,能否在指定时间间隔内修正错误并重新启动系统。恢复测试首先要采用各种办法强迫系统失败,然后验证系统是否能尽快恢复。对于自动恢复需验证重新初始化(reinitialization)、检查点(checkpointing mechanisms)、数据恢复(data recovery)和重新启动 (restart)等机制的正确性;对于人工干预的恢复系统,还需估测平均修复时间,确定其是否在可接受的范围内。
恢复测试生命周期包括各个阶段,具体如下:
2)安全测试
安全测试用来验证系统内部的保护机制,以防止非法侵入。在安全测试中,测试人员扮演试图侵入系统的角色,采用各种办法试图突破防线。因此系统安全设计的准则是要想方设法使侵入系统所需的代价更加昂贵。在IT软件产品的生命周期中,特别是产品开发基本完成到发布阶段,对产品进行检验以验证产品符合安全需求定义和产品质量标准。
安全测试的几种常用方法如下:
1.模式匹配方法:将程序看作字符串
2.状态机模型:将程序看作状态机
3.黑盒模型:将程序看作黑盒子
4.白盒模型:将程序看作路径的组合
3)压力测试
压力测试是指在正常资源下使用异常的访问量、频率或数据量来执行系统。在压力测试中可执行以下测试:
①如果平均中断数量是每秒一到两次,那么设计特殊的测试用例产生每秒十次中断。
②输入数据量增加一个量级,确定输入功能将如何响应。
③在虚拟操作系统下,产生需要最大内存量或其它资源的测试用例,或产生需要过量磁盘存储的数据。
进行压力测试的方法,大致可归纳为两大类:
(1)敏感度分析(sensitiveanalysis)
(2)情景分析(scenarioanalysis)
① 历史情景分析
② 假设性情景分析
【Step1】 制定系统测试计划
系统测试小组各成员共同协商测试计划。测试组长按照指定的模板起草《系统测试计划》。该计划主要包括:
·测试范围(内容)
·测试方法
·测试环境与辅助工具
·测试完成准则
·人员与任务表
项目经理审批《系统测试计划》。该计划被批准后,转向【Step2】。
【Step2】 设计系统测试用例
·系统测试小组各成员依据《系统测试计划》、需求规格说明书、设计原型以及指定测试文档模板,设计(撰写)《测试需求分析》《系统测试用例》。
·测试组长邀请开发人员和同行专家,对《系统测试用例》进行技术评审。该测试用例通过技术评审后,转向【Step3】。
【Step3】 执行系统测试
·系统测试小组各成员依据《系统测试计划》和《系统测试用例》执行系统测试。
·将测试结果记录在《系统测试报告》中,用“缺陷管理工具”来管理所发现的缺陷,并及时通报给开发人员。
【Step4】 缺陷管理与改错
·从【Step1】至【Step3】,任何人发现软件系统中的缺陷时都必须使用指定的“缺陷管理工具”。该工具将记录所有缺陷的状态信息,并可以自动产生《缺陷管理报告》。
·开发人员及时消除已经发现的缺陷。
·开发人员消除缺陷之后应当马上进行回归测试,以确保不会引入新的缺陷。
本文发布于:2024-02-01 12:50:50,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170676305236717.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |