测试体系的建立4建立测试体系的目的1235测试体系介绍自动化测试建立测试体系的可行性存在的不足及展望2建立测试体系的目的基于以上情况,建立测试体系是很有必要的一个规范的软件测试体系,可以提高员工工作效率,降低员工工作强度,有效保证软件质量。一个规范的软件测试体系,可以促进整个项目流程的规范。测试体系介绍测试内容缺陷管理测试流程流程保障手段测试体系介绍——测试内容功能测试安全性测试性能测试测试内容测试体系介绍——测试内容功能测试:主要是对系统中各个功能的可使用性,以及业务流程进行测试。界面测试:测试用户界面功能模块的布局是否合理,整体风格是否符合用户使用习惯,界面中文字是否正确,命名是否统一,页面是否美观等。兼容性测试:主要是测试在不同的操作系统,不同的浏览器中,系统能否正常使用。测试体系介绍——测试内容负载测试:通过逐步增加系统负载,确定在满足性能需求的情况下,系统各项性能指标的变化情况。压力测试:是在超负载的情况下,通过给系统加压,增加并发量,直到系统崩溃,找到系统所能承受的极限值。测试体系介绍——测试内容功能验证测试:是采用软件测试当中的黑盒测试方法,对涉及安全的软件功能(如:用户管理模块,权限管理,加密系统,认证系统等)进行测试。漏洞扫描测试:主要是借助于特定的漏洞扫描工具完成的。通过使用漏洞扫描工具,测试人员能够发现系统存在的安全漏洞。模拟攻击测试:对于安全性测试来说,模拟攻击测试是一种特殊的极端的测试方法,以模拟攻击的方式来验证软件系统的安全防护能力。测试体系介绍测试内容缺陷管理测试流程流程保障手段测试体系介绍——测试流程测试流程新系统的测试流程系统维护测试流程需求变更测试流程测试体系介绍——测试流程新系统测试流程图立项需求评审开发部门编写的需求规格说明书,经评审小组评审之后,确定最终的需求规格说明书系统测试计划根据最终的需求规格说明书以及项目开发计划书编写测试计划,由测试小组编写系统测试方案根据需求规格说明书,系统测试计划编写系统测试方案,由测试小组编写编写测试用例根据需求规格说明书、系统原型设计、系统测试计划以及系统测试方案来编写,测试小组编写测试用例测试用例评审对测试用例进行评审,得到最后的有效的用例集,在测试小组内部进行测试体系介绍——测试流程新系统测试流程图(接上页)执行测试用例根据测试计划,来分配测试小组的成员执行测试用例不通过回归测试(功能、安全性测试)在功能、安全性测试完成之后,则需要进行回归测试,直到通过该项目测试指标才能进入性能测试性能测试根据系统规定的性能指标,对系统的性能进行测试不通过回归测试(性能测试)性能测试完成之后,则需要做回归测试,直到通过测试指标才能进入出厂测试系统测试报告该报告中记录测试对象质量评估以及测试结论与建议版本发布出厂测试通过,即可以发布版本出厂测试测试完成后,需要由测试小组安排测试人员进行出厂测试,如果测试不通过则还需进行回归测试不通过测试体系介绍——测试流程系统维护测试流程图发布修改后的系统不通过版本发布后系统出现bug用手工测试对该系统进行检查,找出bug的位置以及具体操作,确认bug并修复后,进入回归测试手工测试用自动化测试对系统进行回归测试回归测试(自动化测试)出厂测试测试完成后,需要由测试小组安排测试人员进行出厂测试,如果测试不通过则还需进行回归测试测试体系介绍——测试流程需求变更测试流程图新版本发布需求变更客户新增需求或者功能修改等新需求评审评审小组需评审新的需求,并修复需求规格说明书或者新增的需求规格说明书补充测试计划和测试方案由于需求规格说明书的变更,需要补充测试计划和方案的内容测试用例的修改新增或修改与新增需求相关的用例执行测试用例执行修复后的测试用例回归测试修复自动化测试脚本,并进行自动化回归测试出厂测试不通过测试体系介绍测试内容缺陷管理测试流程流程保障手段测试体系介绍——流程保障手段障手段流程保项目组在项目开发前提交需求规格说明书、项目开发计划书、项目原型设计项目提交测试前,应该部署到测试服务器上,方便测试组进行测试需求确定后,不能随时变动,如有变动,应该提前提交相关文档给测试组测试组提交bug后,项目组应该在规定时间内安排开发人员对bug进行处理项目必须在出厂测试完成后才能提交用户使用测试体系介绍测试内容缺陷管理测试流程流程保障手段测试体系介绍——缺陷管理缺陷基本定义缺陷严重级别定义;缺陷类型定义。(具体见测试体系介绍附录)缺陷管理工具禅道管理系统(网址:)测试体系介绍——缺陷管理缺陷管理流程缺陷管理流程是为了有效的跟踪、管理bug,指导相关人员对bug进行处理。对bug进行处理的人员有测试人员和开发人员,职责简要说明如下:测试人员:新增bug,并对修复的bug进行验证,关闭已修复的bug;开发人员:确认bug,并对bug进行修复。测试体系介绍——缺陷管理测试人员开发人员缺陷管理流程图开始新增bug确认bug激活bug验证bug关闭bug结束修复bugYNYN自动化测试的目的自动化测试对程序的新版本运行已有的测试用例(回归测试);可以运行更多更频繁的测试;可以执行一些手工测试困难或不可能做的测试;提高测试执行速度,缩短测试周期,再配合手工的测试,进而提高测试质量。自动化测试用到的知识Java+Selenium2+TestNG+Jxl实例演示这样执行的必要性大家有什么意见或建议?测试体系建立的可行性存在的不足及展望在自动化测试方面需要更深入的学习在安全性测试方面,只做了部分功能验证测试以及模拟攻击测试,还应该加强学习;在漏洞扫描测试方面,可以学习安全性测试扫描工具在性能测试方面,目前对Loadrunner的使用还限于录制脚本,设置参数,关联数据库数据等,需要学习在Loadrunner中编写脚本进行测试自动化安全性性能测试内部存在的不足存在的不足及展望项目开发流程不规范,部分项目未提供相关文档(如需求规格说明书,原型设计等),从而测试工作无法正常进行测试环境不固定,部分项目提交测试时,没有部署到测试服务器上项目需求有变动的,未将新需求提交测试组,也未提交测试组测试测试组提交的bug项目组不能及时处理部分项目未进行测试或者还未测试完成就提交用户使用了项目流程存在的不足一二三四五存在的不足及展望展望实现单元测试实现功能自动化测试使用安全性测试工具进行安全性测试在Loadrunner中编写脚本进行性能测试测试流程规范化,促进项目流程的规范化谢谢大家!