第 6 章 系统测试
系统测试是通过运用相关的测试方法,试图发现程序与用户需求存在不一致的过程。本次测试覆盖项目管理系统所有子系统的各功能点和主要业务流程。
6.1 测试概述。
测试是软件开发过程的一个重要组成部分,是用来确认一个程序的质量性能表。系统测试是在软件投入运行前,经过系统的需求分析,设计规范和代码,最后审查的环节,因此,系统测试完全是服从高可靠性和高需要提供的必要应用手段的保证[12].本项目管理系统的测试是主要通过单元测试,集成测试,用户验收测试和性能测试,再提交用户进行实施[13].
6.2 测试目的。
1.验证系统需求分析、设计、安装文档及用户手册的完整和正确性;2.验证系统功能完整性及正确性;3.验证系统性能方面的要求。
6.3 测试工具及测试环境。
6.3.1 测试工具。
对于系统性能测试部分,针对实际部署运行的用户数量的可扩展问题,使用了LoadRunner 测试工具来测试[14].
6.3.2 测试环境。
测试环境如下:
l 数据库服务器及 WEB 应用服务器l 操作系统--Windows Server 2010l 数据库--SQL2010l 中间件--Web Service
6.4 测试流程。
系统测试过程主要包含了解系统需求,撰写测试计划,编写测试用例,进行测试,记录测试结果,完成系统测试,提交系统测试报告;提交系统问题,跟踪解决问题直至问题关闭[13],保证系统的测试结果达到上线实施的标准[15];1、成立测试项目组。项目组成员主要包含相关测试技术小组、项目开发小组、项目管理系统功能使用小组、技术部领导、项目部领导小组。
2、制定测试计划。项目组了解具体的测试需求,根据需求和时间编写测试项目计划书;3、测试人员编写测试用例,对系统功能进行模块式测试;使用专业的测试工具进行性能的测试;记录相关测试结果,对测试结果分析;4、提交测试中出现的 bug,相关技术小组与开发小组共同解决问题;5、跟踪解决 bug,至问题结束;6、提交分析测试报告,上报测试结果[16].
6.5 测试用例。
6.5.1 功能测试。
系统典型的测试以项目材料的录入使用管理为例在此进行描述:
6.5.2 性能测试。
性能测试是在各种极限情况下对产品进行压力测试,以检查软件的长期稳定性。以并发用户测试数据为例[17-19].用户并发测试是性能测试中主要部分之一,这对多用户基于网络服务器模式(C/S、B/S 架构的系统)是一项重要指标。这个过程其实是一个负载测试和压力测试的步骤,主要是逐渐增加用户数量来加重系统的运载负荷,直到系统出现不能接收正确信息的性能点或者瓶颈为止[20].
本系统性能测试主要是测试系统在200并发用户数的情况下登录项目管理系统完成页面查询搜索业务的吞吐量和性能情况。系统在 1 小时时间内对 200 并发用户进行了系统登录,查询媒体界面,查询普通界面的性能测试,通过系统的吞吐量及平均事物响应时间来体现。
系统在 200 并发用户数下,一小时的测试时间,测试 200 用户并发查询普通页面、查询多媒体页面的系统响应时间的情况,系统的平均响应时间小于 60s,达到系统的响应时间的要求。
上图是测试系统 200 并发用户数情况下,系统访问界面的饿吞吐量的情况,通过上图曲线,明显看出系统性能比较稳定,达到预期的目标。
经过系统性能测试,系统的性能指标符合预期的要求。
6.6 测试结果分析
本文针对系统的功能进行全覆盖的系统测试,并对性能、稳定性、安全性进行了测试。本系统测试共设计测试用例 4000 个,测试包含了所有的系统的功能模块。整个测试过程中共发现 300 个问题,实际解决 300 个,问题全部解决。经过测试,系统运行流畅,符合系统的功能需求,系统达到预期的实现目标。在性能上,系统能够满足预期的性能指标以及安全性和稳定性的要求。