《软件测试规范(v1.1)20180726》由会员分享,可在线阅读,更多相关《软件测试规范(v1.1)20180726(14页珍藏版)》请在金锄头文库上搜索。
1、软件测试规范 软件测试规范1 目的确保软件产品质量,使产品能够顺利交付和通过验收的一项重要措施。2 适用范围适用于项目开发过程中的系统测试3 角色职责 项目测试负责人根据用户需求说明书、软件设计方案、硬件设计方案组织编制测试计划、测试方案,指导和督促测试人员完成各阶段的测试工作。 项目组测试人员按照测试计划、测试方案完成所承担的测试任务,并按要求填写问题报告及维护记录。 测试经理依照确认规程和准则对工作产品进行确认,提出对确认规程和准则的修改意见 项目负责人组织测试环境的建立。 项目经理审核负责控制整个项目的时间和质量。 研发人员确认修改测试人员提交的bug。4 工作流程4.1 测试依据用户需
2、求说明书和设计方案是测试的依据。因此设计人员应向测试人员提供系统需求规格说明书、详细设计、概要设计等有关资料。同时测试人员需要评审设计方案的合理性和可测试性。测试人员必须认真阅读,真正弄懂系统需求和详细设计。4.2 制订测试方案在测试之前,由项目负责人根据测试计划的要求,组织人员编制相应的测试方案,测试方案应包括以下内容: 测试目的; 所需人员及相应培训要求; 测试环境、工具和测试软件; 测试用例、测试数据和预期的结果。4.3 系统测试4.3.1 系统测试。4.3.1.1 进入系统测试一般应具备以下条件:a)被测软件完成开发且已经置于软件配置管理之下:b)相关的自测报告、软作变更报告等齐全c)
3、具有相关测试的全部文档及资源,如需求说明书、软件设计方案、硬件设计方案、使用手册d)具备相关测试的设施环境。4.3.1.2 测试过程1、 系统测试由测试负责人组织策划(编写测试计划、测试方案、测试用例)并实施,2、 测试人员根据测试计划、测试方案、测试用例执行测试过程,形成测试记录、问题报告及维护记录。3、系统测试一般进行如下几种情况的测试: 正常情况 非正常情况 破坏性测试 边界情况 非法情况 强度测试 性能测试 兼容性测试 用户友好性测试界面设计规范测试: 光标的初始位置 字体是否统一 字号是否符合规定 标题颜色 按钮的名称是否规范 界面布局是否合理,整体效果如何输入值测试: 数据类型 数
4、据长度 约束条件是否满足,是否完整 TAB和Enter键是否起作用 键盘操作能否全部代替鼠标操作 输入(光标)是否按照顺序前进按钮测试: 将按钮放开和封闭是否严格、准确,不能使用的按钮必须封闭 检查“退出”、“取消”等具有共性按钮的功能异常情况测试:在完成正常功能测试后,按正常处理的相同操作顺序,执行与正常处理不同的动作例如 正常处理中要求输入日期的字段,这时输入字符或数字 正常处理中输入字段有范围要求,这时输入超过范围的值 正常处理中用两个值限定范围,这时用一个值或不限定 正常处理中要求用“Tab”键,这时安“Enter”键或其他键 正常处理中单选框、多选框、下拉框等,十一偶那个非指定键操作
5、 使用不同于指定的按钮操作4.3.2 系统回归测试4.3.2.1 进入系统回归测试一般应具备以下条件:a)被测软件完成变更且已经置于软件配置管理之下:b)相关的软件测试报告、软作变更报告等齐全;c)具有相关测试的全部文档及资源;d)具备相关测试的设施环境。4.3.2.2 测试过程回归测试应对变更和受变更影响的部分进行重点测试。1、 测试负责人根据原测试记录、原测试问题报告、软件变更报告单分析系统回归测试的范围,出系统测试计划、系统测试方案、测试用例2、 测试人员根据回归测试的系统测试计划、系统测试方案、测试用例进行系统回归测试记录测试过程。编写测试报告和测试问题报告。4.4 编写测试文档4.4
6、.1 测试点将测试模块分解成多个功能点,测试点应涵盖功能点,也涵盖了正常测试和异常测试。4.4.2 输入数据 输入数据包括界面输入数据、数据库的初始数据及其他外部输入数据。特别是数据库的初始所需属性一一列出,全面是指:数据能达到模块所涉及的全部功能,典型是指这个数据能充分反映功能特点。4.4.3 测试描述 描述测试步骤,包括:操作员所执行的动作(包括鼠标、键盘、加载外部数据等操作);系统的反应,包括:光标定位、光标聚焦、显示字段值、按钮的封闭和放开、功能键的封闭和放开、系统提示和系统消息等。4.4.4 预期输出数据 按准备的输入数据和设计要求的处理过程,模块应输出的数据。 输出数据包括:屏幕输
7、出数据、输出到数据库的数据、输出到其他外部介质上的数据,并指出断点结果或最终结果。4.4.5 实际输出 填写本测试点程序运行后的实际输出。4.4.6 正确与否 程序运行后,实际输出结果和预期输出结果一致时,为正常,否则为不正常。4.4.7 测试结论 填写本次测试的结论,是通过或不通过。若不通过时,应总结存在的问题,可以让修改者一目了然。测试通过的准则为: 软件需求分析说明书中定义的所有功能已全部实现,性能指标全部达到要求。 所有测试项没有残余的一级二级三级的错误,四级缺陷99%得到修改并且通过复测5 缺陷管理5.1 缺陷的定义及其基本属性缺陷是指在软件开发过程中的针对软件产品和开发过程中的问题
8、,这些问题已经影响或可能会影响软件产品的质量。缺陷应该具备以下属性,也就是往缺陷管理库或者缺陷列表中提交的缺陷应该具备以下属性:属性名称描述缺陷标识标记某个缺陷的一组符号,每个缺陷必须有一个唯一的标识缺陷类型根据缺陷的自然属性划分的缺陷种类缺陷验证程度因缺陷引起的故障对软件产品的影响程度缺陷所处的模块或子系统缺陷分步的模块或子系统缺陷出现几率指发现错误的几率缺陷的重现步骤详细的缺陷重现步骤附件与缺陷相关的附件(截图、附件、用例等)备注对缺陷的其他描述5.2 缺陷分类根据缺陷的定义,将缺陷分为如下列: 文档缺陷:是指对文档的静态检查过程中发现的缺陷。检查活动包括同行评审、产品审计等。评审的缺陷要
9、根据被评审对象的类型来确定,被评审的对象包括最终出产物和中间过程产出物,比如需求文档、设计文档、计划、报告、用例等 代码缺陷:是指对代码进行同行评审、审计或代码走查过程中发现的缺陷 测试缺陷:是指由测试活动发现的测试对象(被测对象一般是指可运行的代码、系统,不包括静态测试发现的问题)的缺陷,测试活动包括单元测试、集成测试、系统测试、性能测试等 过程缺陷:有称为不符合项问题,是指通过过程审计、过程分析、管理评审、质量评估、质量审核等活动发现的关于过程的缺陷和问题。过程缺陷的发现者一般是测试人员、项目经理等5.3 文档缺陷分类 缺陷分类描述描述不完整文档内容缺失,或文档应该包括的范围没有涵盖不一致
10、一致性问题有两类:一是与源头说明书不一致,比如需求和客户业务需求不一致、设计与需求不一致等二是上下文或者与前提不一致描述错误文档描述是错误的,不可实现或导致错误的输出或结果功能问题该缺陷将会导致用户功能的错误、不满足、不可用不清楚或有歧义内容的描述不清楚、不能准确表达、或表达的意思有歧义逻辑错误内容组织逻辑不清楚、逻辑错误接口问题与最终用户接口问题、与外部系统的接口问题、内部子系统或模块的接口问题输入输出问题输入输出不完整、不正确、不可测试或验证不细化内容还需要进一步细化性能问题文档的设计或实现方式存在性能问题安全性问题文档的设计或实现方式存在安全性问题5.4 代码缺陷分类缺陷分类描述常量变量
11、定义问题不满足设计或需求编写代码不符合规范条件判断处理循环处理错误异常处理算法逻辑问题注释问题代码冗余性能问题5.5 系统测试缺陷分类缺陷类型描述功能错误影响了重要的特性、用户界面、产品接口或全局数据结构,并且设计文档需要争取的变更。如逻辑、循环、递归、功能等缺陷结构错误Web应用程序结构化页面无法显示,或者显示错误脚本错误Web应用程序当中出现脚本错误,包括客户端对数据进行校验和运算的各种情况下产生的错误页面链接错误Web应用程序页面出现空链接、错误链接、死链接页面文字错误Web应用程序页面出现的中外文拼写、使用、以及不同语种页面的编码错误页面图形错误Web应用程序页面出现图片内容使用不当,
12、或者无法显示ALT错误Web应用程序页面当中超文本标识语言、文本标签解释错误排版错误Web应用程序页面排版不符合要求或者不符合使用习惯业务逻辑不合理应用程序的实现流程和规定业务流程不一致,或者实现流程无法正确完成。包括流程数据的部分并行、争用、同步等操作,引起的流程断裂、死锁、以及其他异常情况业务逻辑不方便应用程序实现流程在实际情况下虽然可以完成,但是存在不必要的反复、等待、冗余等影响使用效率的情况其他错误其他未分类错误建议系统改进建议5.6 缺陷等级定义缺陷的严重程度对以上所述的缺陷类型都是适合的,缺陷的严重程度反映的是对缺陷的发现对象可能造成的影响或后果来定义的。缺陷等级缺陷性质系统中对应
13、的错误分类描述一级致命错误系统崩溃系统死锁导致对被描述的主要对象的理解错误、不可行、不可运转、对业务和整个系统造成重大损失或损害;对使用、维护或保管人员有危险或不安全,以及对产品的基本功能有致命影响的缺陷二级严重缺陷严重错误对被描述的部分对象的理解或实现错误,部分的模块或系统不可行或不能运转或部分模块和系统缺失,对整个系统有重大影响或可能造成部分的损失或损害;严重影响使用安全三级一般缺陷次要错误布局不合理文字错误系统中部分单元模块或单个功能描述和实现有错误、有偏差、不一致或有缺失,不影响模块的正常运行,或有影响,但可以有替代的办法或避免办法四级微小缺陷微不足道基本不影响系统的运行和功能的实现。
14、但是与标准、规范和定义不一致五级建议缺陷新特性不在定义、标准、范围的定义和约束之内,但是从提出者来看是需要完善的建议5.7 缺陷优先级定义缺陷优先级描述特急需要立刻进行修改加急一天到两天之内必须修改高介于中和加急之间中缺陷需要正常排队等待修复或列入软件发布清单低留到最后解决,如果项目的进度恨紧张可以在产品发布以前不解决5.8 缺陷状态定义缺陷状态描述初始状态(New)测试或开发人员提交一个新的缺陷,等待开发人员或项目经理分配修改负责人打回(FeedBack)要求缺陷的报告者再次对缺陷进行说明已分配(Assigned)是指已经分配给属主,等待修改。已解决(Resolved)缺陷被属主修改,等待测试人员验证关闭(Closed)测试人员验证缺陷已经修复重新打开(Reopen)测试人员验证,缺陷没有修改正确遗留(Later)经项目经理和技术经理验证此缺陷在本版本中不用修改5.9 缺陷完成度缺陷完成度描述打开(Open)缺陷没有被解决已解决(Fixed)缺陷已经修改遗留(Suspend