【#第一文档网# 导语】以下是®第一文档网的小编为您整理的《系统分析师论文范文-论软件的系统测试及其应用2》,欢迎阅读!
论软件的系统测试及其应用
【摘要】
2015年3月,我所在公司承担了某养老管理信息平台的开发工作,我有幸作为该项目的技术负责人参与整个开发过程,并负责了该项目的需求分析与系统设计的工作。该系统以养老为主线,其中包括养老档案,照护计划,服务审计,状况跟踪,费用管理,决策支持等方面的60多个业务功能模块组成。 本文以养老管理平台为例,主要论述了软件系统测试技术在该项目中的具体应用。通过采用功能分解、等价类划分及边界值分析来完成系统的功能测试;通过采用LoadRuner等测试工具完成压力测试;通过编写并发测试用例,利用地毯式的逐渐增加阈值量的方式来完成并发测试。通过以上测试技术的运用,大大提升了系统的稳定性及可靠性,最终项目顺利上线,获得用户一致好评。 【正文】
目前我国已经进入到老龄化社会,老龄人口逐年增长,按照老龄办提供的数字,预计到2020年中国的老年人口将要达到2.48亿,与之增加的养老消费人均三千元左右,从整个养老产业的规模来看,估算在2025年要增加到五万亿规模,市场前景巨大。随着互联网的迅猛发展,各行各业都在进行着互联网+的尝试,希望搭上这个发展契机。其中,养老领域更迫切需要解决养老专业化程度低,信息化不足,健康照护水平滞后等一系列亟待解决的问题。
2015年3月,我所在公司承担了全国老龄办及全国几十家养老和医疗机构合作进行的养老管理信息平台的开发工作,我有幸作为该项目的技术负责人,参与整个开发过程,并负责了该项目的需求分析与系统设计的工作。由于我们公司在医疗行业领域有着丰富的成功经验,同时,近些年在养老领域也成功实施过很多成熟的案例,所以,一期投资方出资3000万,委托我们进行这款综合性养老管理平台的开发工作。该系统以养老为主线,其中包括养老档案,照护计划,服务审计,状况跟踪,费用管理,决策支持等方面的60多个业务功能模块组成,系统功能相当完备。
经过前期对全国几十家养老机构和相关合作的医疗单位的调研分析,我们这个系统主要需要解决几大问题。其中包括养老机构从传统方式向先进的精细化管理过渡,人员组成结构和工作方法的改变,如何更好的医养结合对老人进行健康照护等。因此,如何提升系统的稳定性及可靠性,软件测试方法的运用显得至关重要。
系统测试的主要内容包括功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、安装和反安装测试等。其中,最重要的工作是进行功能性测试和性能测试。功能性测试主要采用黑盒测试,主要目的是检查功能是否按照SRS的要求正常使用,软件是否能够恰当地接收输入数据并产生正确的输出信息,软件运行过程中能否保持外部信息的完整性;性能测试主要验证软件系统在承担一定负载的情况下所表现出来的特性是否符合客户的需要,主要指标有响应时间、吞吐量、 并发用户数和资源利用率等。性能测试主要目的验证软件系统是否能达到用户和提出的性能指标,同时发现软件系统中存在的性能瓶颈,并优化软件,最后起到优化系统的目的,包括发现缺陷,性能调优,评估系统的能力,验证稳定性和可靠性等方面。
本文基于整个养老管理信息系统结合具体软件测试的各种方法,主要对项目的功能测试和性能测试中的压力测试、并发测试几个方面进行详细的论述。
首先,系统的功能测试。如何能够对覆盖用户提出的所有需求,这个是进行功能测试的核心目标。由于功能测试的方法很多,我们主要采用了功能分解,等价类划分,边界值分析来进行测试。起初,根据项目在需求分析阶段整理的需求分析文档(SRS),我们对每个功能模块进行细化分解,建立功能测试用例并编写测试用例文档,譬如,照护计划模块,包括护理员和护士角色,根据角色划分具体工作,测试用例就需要拆开编写,具体的个人卫生,常规照顾等属性护理员角色,护理工作,医疗服务等属于护士角色。子模块继续拆分,个人卫生包括穿衣服务,起床梳洗等。继续拆分就是每个业务功能中包含具体的数据输入和保存等操作功能。经过这种自上而下的梳理和拆分,功能测试用例对整个系统基本全部覆盖,保证功能不缺失。然后,针对具体的数据输入项,为了保证数据输入的合理有效,我们又针对特殊字段进行了等价类划分的用例测试。譬如,电话,体温值,血压值等输入项,进行了有效类和无效类划分,同时,结合边界值的分析,确保了系统输入数据的正确有效。
其次,系统的压力测试。由于养老系统本身采用的B/S架构风格开发SAAS服务平台,服务器统一部署,用户采用浏览器和移动设备(主要是手机和PAD),系统用户规模较大和未来有可能会不断增加,如何保证系统在大量用户下系统响应正常,服务器是否能够承受住多大压力?进行有效的性能测试,其中压力测试是解决以上疑问的必要手段。我们基于需求分析阶段关于非功能需求的分析,综合考虑当前用户规模和近期可能的使用情况,对服务器配置和型号进行选型,采用了1U的刀片服务器,内置负载均衡配置,热插拔,性价比高,扩展方便。首先,根据系统部署方案和测试用例,利用LoadRuner等测试工具在服务器上进行
压力模拟测试,评估一下压力峰值,观测并记录下CPU,内存等使用情况,为了充分利用服务器,同时,又保证系统的稳定运行,我们以CUP和内存到达75%最高上限。其中测试发现没有达到预计标准的情况,我们首先进行了程序上的优化,提高CUP的使用率和降低对内存的消耗,然后,有些软件优化不了的考虑服务器的扩充,最后保证了系统压力性能的要求。
最后,系统的并发测试。基于B/S模式的分布式服务平台,每天同时有大量用户在工作使用,如何保证系统在满足正常功能的前提下,不会被使用人数的增多而影响,这个就是并非测试需要解决的问题。我们基于需求分析阶段的分析结论,编写了并发测试的测试用例,根据并非场景较多的模块进行了重点测试。利用LoadRuner软件,录制了使用脚本,利用地毯式的逐渐增加阈值量的方式,譬如,用户登陆,老人列表是使用最频繁的模块,我们模拟1000,1100,1200等不同阈值,如果测试过程中出现问题,把问题反馈给开发人员进行调试优化,很多问题是系统没有进行系统没有充分考虑到业务场景,对多线程处理不当造成的,经过定位问题和并进行优化后,很多问题重新进行测试后,确实得到了解决和改善。但是,在充分发挥软件能力的同时,服务器使用上达到了上限,为了保证系统的高可用和用户的使用效果,我们又通过扩展服务器的方式来提升并发量。最后,通过部署4台应用服务器,基本满足需求分析中前期全国使用用户数量并发量控制在1000左右的要求,响应速度在2s以内的要求。
整个项目历时10个月开发完成,到目前运行稳定。通过在生产环境一段时间的使用,用户普遍反馈良好。但同时,也存在一些的不足,譬如,关于养老机构楼层设置这部分,由于用户提出修改需求,增加每个楼层的建筑结构图,简化了处理,但是,在测试过程中测试不够全面,没有进行充分的性能测试,导致用户使用过程有时会有些慢,经过测试查出是程序问题,重新优化的处理方式,并进行了充分的性能测试,响应时间小于1s,达到了使用要求,最后获得用户的认可。
实践证明,有效利用多种测试方法充分进行系统测试,可以有效降低项目风险,对项目顺利进行起到至关重要的作用。养老管理平台是一个通用的管理平台,接下来,作为项目的技术负责人,我会总结现阶段的经验教训,在后续系统升级完善中,不断思考和改进系统测试中的不足,在后续项目中充分发挥系统测试的更大作用,为公司创造效益的同时,也能够为客户开发出更稳定更高效的系统。
本文来源:https://www.dy1993.cn/2cA.html