对于软件测试工作流程,以及过程中的应遵循的流程规范,对软件测试初入者来说可能一知半解,今天笔者就将曾用过的一份软件测试工作流程标准整理分享给大家,希望能让你对测试流程有个清晰的认知。如果你采纳,那也注意应结合自己所处环境的实际情况进行修剪后再用。
一、概述
1、编写目的
该文档主要对测试团队测试活动进行了规范,使我们的产品测试活动更加科学有序的进行,旨在提高产品的测试质量。
2、测试职责
测试是项目开发过程中的重要组成部分,肩负着如下责任:
1)在项目的需求文档确立基线前对文档进行测试,并从用户体验和测试角度提出自己的看法。
2)制定合理的测试计划,并与项目整体计划有机地整合在一起。
3)科学的方法设计需求覆盖率高的测试用例。
4)认真负责地实施测试工作,提交缺陷并协助开发重现与定位问题。
5)针对缺陷进行跟踪与维护,及时反馈测试情况。
6)提交项目测试 告,总结测试过程并持续优化。
二、制定测试计划
测试计划的目的是尽早的明确测试工作的内容(范围)、测试工作的方法以及测试工作所需要的各种资源,并把这些信息发布给所有涉及到测试工作的涉众,尽快将下一步测试工作需要考虑的问题和准备的条件落实下来。
在采用具体策略之前可以参考下面几个建议:
1)对于业务流程比较重要的系统,首先要考虑用场景法编写流程用例,要求覆盖所有的基本流和备选流。其次需要编写功能点测试用例,要求覆盖所有的需求,保证需求的各个功能都能正常的实现。我们首先要考虑通过测试用例,来证明软件可以满足需求;再使用失败测试用例,来尽可能多的发现缺陷,保证软件具有一定的容错和安全能力。
2)在测试用例的编写过程中需注意其详细程度,要注意执行此测试用例的人员。
3)覆盖功能点不是指列出功能点,而是要写出功能点的各个方面,如果组合情况较多时可以采用等价类划分的方法。
2、测试用例设计原则
1)全面性
①应尽可能覆盖程序中的各种路径(要覆盖所有的需求,所有的流程和功能都应有相对应的测试用例)。
②应考虑存在跨年、跨月的数据。
③大量数据并发测试的准备。
2)正确性
①输入界面的数据应与测试文档所记录的数据一致。(测试执行时,要按照测试用例提供的数据执行)
②预期的测试结果应与需求设计产生的业务和结果吻合。(就是测试的预期结果不能违背或超出需求设计的要求)
3)符合正常业务惯例
①测试用例应符合用户实际工作业务流程。(测试用例的设计要参考《需求规格说明书》和《概要设计说明书》)
②兼顾各种业务变化的可能。(设计的测试用例要有可变化性,即要定期维护)
4)系统性
①对于系统业务流程有一个完整、正确的说明,包括系统的各组织结构(子系统、模块)相互间的关系,对于相互间有联系的子系统的业务关系的描述一定要清晰、直观。
②模块业务流程要清晰描述各模块内部功能、它们相互间的联系;若有模块功能类似,应对其进行区分。
5)仿真性
人名、地名、电话 码等应具有模拟功能,符合一般的命名惯例。
6)可操作性
①测试用例中应尽可能的写清测试的内容和必要操作要求,以便测试人员能更好理解和测试操作。
②操作性的另外一方面是界面友好性,例如信息中的信息漏填,系统的提示是否明确(指出是具体哪项未填写),光标是否定位到相应输入项。
7)容错性(健壮性)
①容错性测试就是测试系统是否容易崩溃或瘫痪;
②程序能够接收正确数据输入并且产生正确(预期)的输出,输入非法数据(非法类型、不符合要求的数据、溢出数据等),程序应能给出提示并进行相应处理。把自己想象成一名对系统操作一点也不懂的客户,进行任意操作。
8)接口(连贯性)
①试各个模块相互间的协调和通信情况,数据输入输出的一致性和正确性。(这个在系统测试中是非常重要的一环,大多数比较严重的BUG往往是在模块间的接口和交互上的,一定要全面的测试它们之间的协调和通信)
②于系统业务流程来说,各个子系统之间是如何连接在一起,如果需要接口,各个子系统之间是否有正确的接口。
③果是依靠页面链接,页面链接是否正确;子系统间是否有制约(加锁、解锁),如果有制约,它们之间的关系要描述清楚。
④于模块业务流程来说,同级模块以及上下级模块是如何构成一个子系统,其内部功能接口是否连贯,接口间的交互是否正常。
9)数据库
数据库设计规范对软件系统的数据库结构、数据表及其之间的数据调用关系进行测试。(主要是测试数据是否正确、及时的导入/导出数据库,数据表及其之间的数据调用关系等,比如在界面显示的信息,是否与数据库中的信息一致。对信息的修改是否及时的导入数据库等。对于取消批改的信息,该信息在数据库中的信息是否正确、及时回滚)
10)可移植性
在不同操作系统及硬件配置情况下的运行性。(例:把系统安装在windows 2003/win7 的英文版 、中文的操作系统下进行测试,检验系统的所有功能是否能正常的运行,系统性能是否稳定等)
3、QC用例编写规范
测试用例要包括欲测试的功能、应输入的数据和预期的输出结果。测试数据应该选用少量、高效的测试数据进行尽可能完备的测试;基本目标是:设计一组发现某个错误或某类错误的测试数据。
1)界面测试和功能测试用例分开编写。界面测试可以根据需求和行业规范列出checklist,不单独针对每个页面进行用例编写。
2)如果需求是增量的,应该对用例进行版本规划。起始编 为V1.0.0,具体版本编 可以根据需求制定。
3)根据需求文档结构视图,采用树形结构进行对用例的编写。(如果需求模块结构不合理,可以适当做修改)
4)注意命名前面加上编 ,如果下级编 大于10的,用“01”作为起始编 ,如:2.01。(同样也适用于用例步骤编 )
5)每条测试用例对应系统的一个流程,用例名称应该简洁易懂。
6)每条测试用例的目的,测试等级和预置条件等信息统一填写到详细信息里。(测试等级与相应需求的优先级对应)
7)用例尽量根据实际情况,按照最高执行效率进行排版;测试用例中的每个步骤:不能出现二义性,仅是一个可执行的步骤,每个步骤对应一条预期结果。
8)如果用例间存在关联的(如,前一个用例执行成功是后一个用例执行的前置条件),把影响后面执行的用例放在前面。
9)针对每个测试点,建议常规用例(以边界值分析、等价类划分、正交分解法等编写的用例)放在前面,非常规用例(仅指错误猜测法编写的用例)放在后面。
10)用例编写应采用书面语,文字语言简练易懂,避免出现错别字,病句或逻辑错误。
11)涉及到增加、删除或修改等用例时,应该增加一条验证步骤。
12)例应该动态维护,如在测试执行中发现新的测试点,应及时添加到用例中去。
四、测试执行
1、获取并部署测试版本
由开发组(部)发起测试申请,并给出测试包的获取地址。测试包应该包括:测试版本及内容说明、程序安装包、测试部署手册、数据库脚本等工件(具体内容应根据项目实施规范而定)。
获取安装包后检查所含工件是否完备、正确,不完备则根据情况打回;完备则根据部署手册进行测试环境的搭建。
环境搭建注意事项:
1)测试环境应尽可能接近真实的用户部署环境。
2)测试环境中必须保证没有安装开发调试环境,避免影响最终测试结果。
3)由测试人员依照部署手册来完成,不得由开发人员代为部署。
4)部署手册中出现的问题也应一并提为BUG,并于下个版本回归测试。
5)测试环境需设定登录口令,不允许开发人员对部署版本单独替换/修改。
6)项目测试环境口令需汇总至测试组长(经理)进行统一管理。
测试执行原则:
1)测试前做好环境备份(包括数据库、程序源文件),以便测试出现故障时还原环境。
2)要明确该次的测试目的,自己要测试内容以及对应的测试依据。
3)测试首先要依据测试用例执行,然后在此后再进行错误推测法进行测试。
4)把事实与推测分开,总是用实际的证据来证明你的推测。
5)偶然性出现的BUG一定要反馈到缺陷中去,有图的应尽量截图,无法截图的应在再次出现该BUG时立即联系开发人员进行确认。
6)测试执行应分优先级,应优先保证关键功能和测试内容的充分测试。(在时间不充分情况下,该原则尤为重要)
六、测试类别
1、功能测试
功能测试是一个试图发现程序与其外部规格说明之间存在不一致的过程。外部规格说明是一份从最终用户的角度对程序行为的精确描述。测试时按照科学方法设计的测试用例执行测试,在优先保证测试用例执行完全的前提下,再根据对业务的了解和经验性的判断进行探索性测试。
2、界面测试
界面测试简称UI测试,界面为用户与软件交互最直接的层,所以更注重用户的体验性,主要从用户的感官、交互、浏览、情感和体验出发。具体测试用户界面的功能模块布局是否合理,整体风格是否统一,各个控件的放置位置是否符合客户使用习惯,是否符合操作便捷,导航是否简单易懂,界面中文字是否正确,命名是否统一,页面美观,文字、图片组合是否完美等等。测试时可以按照最终用户具体的需求,以及通用的用户体验原则进行测试list的编写,然后测试人员根据list执行。
3、兼容测试
兼容性测试是指测试软件在特定的硬件平台上、不同的应用软件之间、不同的操纵系统平台上、不同的 络等环境中是否能够很友好的运行的测试。通常兼容性测试为软件在不同浏览器、操作系统和分辨率下的兼容测试。测试时测试人员按照软件的具体兼容性需求进行测试。
4、易用性测试
考察评定软件的易学易用性,各个功能是否易于完成,软件界面是否友好等方面进行测试。测试时可以根据用户需求,以及同类行业软件对易用性的通用原则列出测试list,然后测试人员根据list执行。
5、性能测试
性能测试是通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。测试分为三个大的步骤进行:一、测试前的准备工作,包括确定用户、业务、系统需求,了解被测系统所属类别(如B/S结构),测试环境构成(系统配置基线清单),测试环境 络拓扑图,实际 络带宽情况,测试服务器及测试机配置清单,系统功能流程图及测试时间;二、测试实施,依次为制定测试计划、编写测试方案,设计测试用例,录制测试脚本,模拟测试场景及运行测试;三、测试结尾,依次为分析测试结果及定位瓶颈,编写性能测试 告,做性能测试总结。
大部分性能测试都利用工具loadrunner完成,涉及webserverice接口一般采用工具为SOAPUI。
6、安全测试
安全测试内容主要为安全功能测试、安全漏洞扫描测试。安全功能测试又分为应用安全和数据安全的测试:应用安全主要从安全审计、密码支持(加密)、标识与鉴别、用户数据保护及安全管理方面进行测试;数据安全主要为原始数据的安全性、互联 的安全性以及数据的备份和恢复等内容。安全漏洞扫描统一采用IBM Rational AppScan9.0以上版本进行扫描,扫描出安全等级为“高”、“中”的漏洞应该及时进行修复,“低”和“建议”等级的漏洞在不影响业务运行的情况下加以解决。
六、BUG处理流程
1、BUG处理流程图如下:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!