您好,欢迎访问三七文档
1.1.1软硬件测试方案1.1.1.1测试目的和要求1.1.1.1.1测试目的作为软件开发的重要环节,软件测试越来越受到人们的重视,软件测试是软件工程过程的一个重要阶段,是在软件投入运行前,对软件需求分析、设计和编码各阶段产品的最终检查,是为了保证软件的正确性、完全性和一致性,从而检测软件错误、修正软件错误的过程。随着软件开发规模的增大、复杂程度的增加,以寻找软件中的错误为目的的测试工作就显得更加困难,因此要求测试计划和测试管理更加完备。本次测试安排在项目进行编码过程中和编码完成后进行,测试的内容包括系统界面风格、主要功能、容错能力、模块间的关联等等,依据正规步骤完成单元测试、边缘测试、整体测试。通过测试,及时发现存在于程序中的错误并根据测试结果对程序进行修改,从而确保提交给用户的程序是经过检验并能顺利运行的。1.1.1.1.2测试的总体要求软件测试可运用多种不同的测试策略来实现,最常用的方式是自底向上分阶段进行,对不同开发阶段的产品采用不同的测试方法进行检测,从测试开始,然后进行功能测试,最终进行系统测试。尽早地和不断地进行软件测试。保证系统风格与界面统一。保证各系统联接正确,数据传送正常。抽检程序的内部编写情况无误。测试用例应由测试输入数据和对应的预期输出结果两部分组成。程序员应避免负责测试自己编写的程序。测试用例,应当包括合理和不合理的输入条件。应当检查程序是否有不希望的副作用。程序流程和接口内容绝不可忽视。充分注意测试中的群体现象。严格执行测试计划。对每个测试结果严格检查。妥善保存文档。性能测试和功能测试同等重要。1.1.1.1.3测试人员及组织分工参加测试人员包括技术支持组部分人员、开发小组全体成员、质保组测试成员和用户人员。组织分工如下:单元测试:由实施组成员在编码过程中,各自以及交叉进行单元测试。集成测试:由质保组两名测试成员、实施组两名成员进行集成测试。系统测试:由技术组项目技术负责人、系统设计师、用户人员进行系统测试。1.1.1.1.4软件测试的依据1.1.1.1.4.1用户文档软件测试依据的用户文档主要有以下两个:《需求规格说明书》《总体设计书》1.1.1.1.4.2测试技术标准规范软件测试依据的国家技术标准规范主要有以下八个:GB/T17544-1998《信息系统及软件完整性级别》GB/T16260-2006《软件质量模型与度量》GB/T18905-2002《软件工程产品评价》GB/T8567-2006《计算机软件文档编制规范》GB/T9386-2008《计算机软件测试文件编制规范》GB/T25000.1-2010《软件质量要求与评价(SQuaRE)指南》CSTCJSBZ02《应用软件产品测试规范》CSTCJSBZ03《软件产品测试评分标准》1.1.1.2测试方法和主要内容1.1.1.2.1软件测试方法1、单元测试测试是在软件开发过程中针对功能模块进行的正确性检验,执行测试的人员首先是程序开发者自己在开发过程中的自测试,其次才是专业测试人员。测试的对象是软件设计的最小单位-模块。测试应对模块内所有重要的控制路径设计测试用例,其测试依据是项目的详细设计描述。采用的多为白盒测试。2、集成测试将已测试的模块组装进行检测,对照软件设计检测和排除子系统或系统结构上的错误。案例采用黑盒测试法。集成测试的重点是检测模块接口之间的连接,发现访问公共数据结构可能引起的模块间的干扰,以及全局数据结构的不一致,测试系统或子系统输入输出处理、故障处理和容错等方面的能力。3、系统测试系统测试应该由若干个不同的测试环节组成,目的是重返运行系统,验证系统各部件是否能正常工作并完成所赋予的任务。其主要包括以下方面的测试:恢复测试:检查系统的容错能力。安全测试:检查系统对非法侵入的防范能力强度测试:检查程序对异常情况的抵抗能力。性能测试:检查系统能否满足性能要求。主要包括响应时间、并发用户数,及相应的CPU、内存、硬盘等的利用率及网络吞吐量等。1.1.1.2.2测试的主要内容1.1.1.2.2.1功能测试功能测试主要采用的是黑盒测试方法,黑盒测试法制订覆盖《需求规格说明书》和《总体设计书》中所要求的全部功能点和主要业务流程的测试用例,通过测试用例的执行,分别对功能点和业务流程进行测试。1、功能测试方法本次功能测试中采用黑盒测试法,主要测试用例设计方法包括因果图分析、等价类划分、边界值分析、错误推测法:(1)因果图法:采用因果图法,以委托方提供的《需求规格说明书》和《总体设计书》为依据设计业务功能点测试案例;(2)等价类划分法:对业务流程进行等价类划分,测试用例应是业务主流程和流程主分支的最小集,所有的判别分支都能被覆盖,在流程覆盖的同时,完成等价功能的测试;(3)边界值分析法在功能测试中,针对功能说明中的输入输出域,进行边界值和极限值的设计和测试;(4)错误推测法:采用逆向思维方式,结合以往测试经验和直觉设计软件在功能和流程上可能存在的各种错误,进行容错性测试。功能测试策略主要从以下方面考虑:(1)安装如果软件安装由用户来进行,则按照安装手册中的信息应能安装成功。产品说明书中,给出的每个所需的配置在安装程序时都应具备。安装之后,程序是否运行应是可以鉴别的。例如,使用测试用例或通过相应的信息自检。(2)数据准备软件内部应具有一定的数据量供测试使用。最好由厂商提供符合规范的测试数据作为数据准备,也可以由厂商提供数据导入格式,测试方使用该数据导入格式自行制作一定量的数据备测试使用。(3)功能表现在用户文档中提到的所有的功能都应能执行。程序应按照用户文档中的给定形式,在规定的边界值范围内使用相应的工具、资源和数据执行其功能。(4)正确性程序和数据应与产品说明书及用户文档的全部内容相对应。为完成工作任务程序功能应以正确的方式执行。特别是,程序和数据应符合产品说明书涉及的任何需求文档的所有规定。(5)一致性程序和数据其本身内容不能自相矛盾,并且同产品说明书和用户文档也不能相互矛盾。每一术语应处处保持相同的意思。由用户进行的程序操作控制和程序的运行表现(例如:信息、屏幕录入格式和打印报表)应有相同的结构。(6)用户界面测试对用户界面的布局、界面文字、操作步骤、操作方式、快捷方式进行测试和验证,必要时候通过用户调研或用户测试,验证用户界面是否满足用户要求2、业务流程测试方法业务流程测试主要是在功能测试的基础上,测试系统完成某项业务的能力。业务流程重点考查系统不同模块、不同子系统之间的功能衔接、数据流向以及完成业务功能的正确性和便利性。我们按照以下原则进行流程测试:先测功能后测流程:业务流程测试是建立在功能点测试基础上的。首先要保证流程测试涉及到的功能点实现正确,所以,流程测试安排在功能测试的后面进行。先测主流程后测分支流程:主流程就是指按照正常情况实现的业务流程,分支流程指出现特殊情况后的业务流程。先测子系统内的流程后测跨子系统的流程:子系统内的流程测试随子系统的功能测试进行,在子系统流程测试完成后,集中人力进行跨子系统的主流程的联调测试。本系统中业务流程测试先针对各子系统各自的主业务流程和分支流程分别进行测试,然后对不同子系统之间的业务流及数据流进行测试。3、功能覆盖率分析对每个模块的功能覆盖率进行分析,首先测试用例对所有的业务流程、数据流以及核心功能点的覆盖率达到100%。其次,必须满足用户测试的需求。4、测试内容测试将对以下项目应用系统中的相关功能进行测试。1.1.1.2.2.2安全性测试安全性测试采用软件测试当中的黑盒测试方法,对涉及安全的软件功能,如:用户管理模块、权限管理模块、加密系统、认证系统等进行测试,主要是验证上述功能是否有效。1.1.1.2.2.3可靠性测试可靠性是指产品在规定的条件下和规定的时间内完成规定功能的能力。例如针对某个软件系统,主要的可靠性测试指标包括:屏蔽用户操作错误:考察对用户常见的误操作的提示和屏蔽情况;输入数据有效性检查:系统对数据录入的有效性检查;错误提示的准确性:对用户的错误提示准确程度;错误是否导致系统异常退出:有无操作错误引起系统异常退出的情况;异常情况的影响:在程序运行过程中进行掉电或断网试验,考察数据和系统的受影响程度,若受损,是否提供补救工具,补救的情况如何;数据库备份及恢复测试:系统是否提供数据备份和恢复手段,能否进行数据库的备份和恢复。结合功能测试:对于用户权限限制、用户和密码封闭性、数据备份与恢复手段、留痕功能等,系统安全性的测试可以结合功能测试完成,因为上述功能即是系统安全性考虑,同时也是系统的功能模块;留痕功能:系统是否有操作日志,操作日志记录的操作情况的全面性和准确性,是否包括主要要素如操作员、操作日期、使用模块等,是否具有日志查询功能;采用统一身份认证,用户能否操作不属于其职权的其他子系统;外网能否不经过CA认证就可登录该系统。可靠性测试除了包括上述基本项外,重点的测试内容是数据可靠性和系统长时间无故障稳定运行,可通过以下种方法实施:1、结合功能测试:软件可靠性与软件本身的缺陷数量息息相关,因此结合功能测试寻找软件缺陷,可以提高软件系统可靠性,主要是系统的错误屏蔽、数据校验能力和其他与功能相关的可靠性指标;2、模拟测试:通过模拟的手段模拟系统异常情况的出现,如:系统死机、系统掉电、网络中断、设备故障等情况,测试系统对于出现异常情况的预防和恢复措施。3、独立处理能力:在某系统发生故障时具有能独立运行的能力。4、数据可靠性测试:包括数据备份测试策略、灾难恢复测试、备份与恢复速度。5、长时间无故障稳定运行:日常业务疲劳强度测试就是模拟系统的日常业务,持续执行“一段时间”,暴露系统的性能问题,例如内存泄漏、资源争用等,分析与调整的方法与并发性能测试是非常类似的。高峰业务疲劳强度测试就是模拟系统的高峰业务,持续执行“一段时间”,这样的负载是对系统的双重考验,既包括负载压力,又包括长时间。1.1.1.2.2.4性能测试1、性能测试综述性能测试方法是在系统真实运行环境,基于重点事件优先的原则,设计业务执行效率测试用例,采用测试脚本回放的方法,仿真实现事务的处理过程,通过在单台或多台测试用机上执行多线程或多进程实现多用户并发测试,或者基于批处理模式,加载一定规模的数据量,进行系统资源监控测试。测试包括执行效率、设备效率、网络效率。(1)执行效率测试主要是测试在特定应用的业务逻辑、用户界面、功能下系统能够承受的用户并发的数量和响应时间。上述测试可通过自动化的测试工具录制具有一定代表意义的典型操作,并进行测试脚本编译即可形成确定的测试案例,然后通过压力测试工具,模拟多用户同时循环进行这些业务操作,测试服务器事务处理平均响应时间、服务器90%的事务处理平均响应时间、事务处理速率等相关参数,考察系统在各种情况下的性能表现。在具体测试过程中需要结合功能测试制定相应的测试案例,包括以下内容:测试脚本:选择影响系统执行效率的功能模块,录制典型的业务流程脚本作为执行效率测试的基础案例。测试脚本的制定方法,可以利用测试工具的“录制”功能录制相应的测试脚本,也可以通过脚本编程语言进行脚本的编写;并发用户数量:分为负载测试和压力测试,负载测试是指系统能够承受的正常用户并发数量;压力测试是指系统能够承受的最大用户并发数量;并发方式:主要指用户并发过程中与真实情况相似程度,包括并发用户数量变化的方式、并发过程使用的真实客户端数量、对于并发峰值的模拟等。(2)设备效率主要指系统CPU占用率、内存占用率、磁盘占用率、输入输出效率等,包括软件在不工作状态下对于硬件资源的占用情况和进行业务处理过程中对于硬件资源的占用情况,包括数据库服务器、应用服务器和客户端等。通常操作系统均提供了监控端口,只要通过测试工具自动连接相应端口,即可实现监控系统的设备效率,并结合执行效率进行相关测试。(3)网络效率主要指网络吞吐量、网络的使用频度与带宽占用。性能分析:通过执行和设备效率及网络效率测试结果进行性能分析,找出可能影响性能的环节。2、性能压力测试实施测试实施可从以下几个方面考虑:(1)并发性能并发测试的过程,是一个负载测试和压力测
本文标题:软硬件测试方案
链接地址:https://www.777doc.com/doc-4234052 .html