软件测试新手如何快速找出软件中的Bug

软件测试新手如何快速找出软件中的Bug
软件测试新手如何快速找出软件中的Bug

软件测试新手如何快速找出软件中的Bug

1、尽快熟悉公司的产品业务

比如你们公司做ERP软件的,你肯定要迅速熟悉EPR的业务流程;比如你们公司是做法院软件的,那么你一定要熟悉法院审判案件的流程,只有熟悉了产品的业务流程、你才能迅速找出软件中存在的一些重要的缺陷,你发现的软件缺陷才是有价值的。否则即使你能找到一些软件缺陷,那也是纯软件的缺陷,价值不大。

2、把自己当成是用户

把自己当成是用户去使用该系统,比如在使用该系统过程中是这样操作的吗?

2.1 比如在大量要求用户输入的软件界面中,有一些用户喜欢使用Tab键采用全键盘的

输入;此时的正确的接口应该采取从左到右,从上到下的顺序。

2.2 比如有的用户喜欢使用快捷键操作等(Ctr+C,Ctr+V,Ctr+F),但是实际情况下一些

开发出来的软件的快捷键却根本不起作用。

2.3 比如软件在需要用户输入的信息的时候(特别是在填写个人资料的时候),必填项

后面一律要用*等醒目的标示,要让用户知道这个地方时必须填写的。

2.4 下拉框不选值的时候,应该有个默认值;并且要多检查程序中的多处下拉框,因为

很多情况下下拉框取不到值。

3、善于怀疑,不要迷信高手

世界上没有绝对正确的,总有错误的地方,具有叛逆心理,别人认为不可能发生的事,我却认为可能发生。别人认为是对的,我却认为不是对的。如果你认为某个或者某些程序员水平很高,他写的这个地方应该没问题吧,那么我要说你错了,这样很容易遗漏软件中的Bug。因为程序开发人员毕竟是普通的人,只要是人就会犯错误的。

4、不要让程序开发人员的观点:“用户不会进行这样的操作”而说服自己

遇到这样的情况,你要坚持你自己正确的想法,以后对方会明白你的。比如在一个录入员工基本信息的系统中,系统中对员工的年龄作为负值、而没有作为判断、也可以保存到数据库中,此时你不要被程序员的用户不会进行这样操作的观点说服自己,你要坚持你正确的观点,把这种现象作为一个Bug吧,勇敢点!你的选择不会不错!

5、在软件测试过程中要跟踪一条数据完整的流程

在软件测试的时候要跟踪一条数据完整的流程,保证数据的正确性这个真的是太重要了:假如你在测试一个销售的类型的软件的时候:你应该先做订货-à入库-à盘点-à销售-à查询。首先你要保证这个数据的流向是正确的无误的。假如你在测试法院审判软件的时候,你要先收案-à立案-à发送审批-à排期---审理审判-à结案判决-à归档-à查询。

总之跟踪一条数据的流程,保证数据的正确性。如果经过你测试的软件在用户使用过程中业务流程上都走不通的话,那么这样的软件你说经过你的测试,但是在比人看来与没有测试有什么区别呢?

6、回归测试要注意的细项

程序员提交新的程序版本后,作为测试人员应该立即与程序员沟通这个修改的功能、并且这个新修改的功能影响哪些功能。举个简单的例子来说明一下:比如在一款软件中,程序开发人员修改了某个“会员”的某个字段信息。作为测试人员首先你要测试“会员”的功能这个是你首先需要做的。另外你还要和程序员沟通询问他们新修改的这个会员的字段,会影响会员的销售功能吗?会对会员以前的销售记录的查询有影响吗?如果对这些功能有影响,那么这些功能都是你在回归测试的时候重点测试的地方,也是最容易产生Bug的地方了。

7、与使用者互动的缺陷

7.1 如填写资料错误应的时候,应该能够提示错误的位置,让用户知道是这个地方输入数据不对。

7.2 删除数据之前给一定要给出是否删除确认提示。

7.3 不要在软件中使用中英文混合的提示比如:比如对于用户某个操作的错误提示,不要一会用“error”、一会用“错误”;一会用“succeed”另一会用“成功”,总之要统一。

7.4 另外要对程序员出现错别字进行检查,比如把“登录”写成“登陆”。

7.5 另外,在软件中不要对用户使用很专业的术语比如“记录”、“字段”等。

7.6 新增/修改信息保存提交后系统给出“保存/提交/修改成功”提示信息,并自动更新显示

7.7 在用户进行大量的输入后,点击“保存”按钮,仅仅是因为某个地方的输入选择不正确,点击确定后发现所有的输入的内容都全部被清空了,花费很长时间的输入、仅仅是某个地方的输入不正确,而把该用户的所有输入的其他内容也清空了,假如你是这个软件的使用者、你肯定感觉挺挺恼火的。

7.8 对于软件中的查询功能,测试的时候设置开始时间>大于结束时间看看能否查询出记录,这也是程序员容易犯的一个错误。

8、软件边界值

众所周知软件最容易在边界值上出现问题了,所以作为测试人员一定要在边界值上多测试,比如测试用户输入框中的数值的最大数和最小数,以及为空时的情况。

9、非法容错性

比如在需要输入数字的地方输入字母;在需要输入字母的地方输入数字;在需要用户输入的文本框中拷贝字数很多的整篇文章到这里测试看看软件是如何做处理的;在含有除法的计算中把除数设为0等等来检验软件的容错性。

10、软件接口的测试

如果软件不同部分是由多个程序员共同完成的,那么要在他们程序接口相关联的地方多检查,因为有时候在接口的地方,A程序员认为B程序员做了处理;B程序员认为A程序员做了处理;但是事实上他们双方都没有做处理。笔者的亲身经历:曾经做过一款销售类型的软件,A程序员做订货、B程序员做入库,他们每个人的程序都能单独运行,结果集成到一起就出现了错误,这个问题在测试过程中居然没有被发现,在用户的实际使用环境中用户发现报表查询出来的结果不准确,才发现了这个问题。

11、兼容性检测

软件测试要在不同的硬件、软件(包括操作系统、IE浏览器)下的测试

11.1 硬件:有时候软件在配置很高的机器上,有时候会隐瞒一些错误,比如CPU过快的时候,很多现象一闪而过,发现不了缺陷。

11.2.软件:比如笔者最近测试的一款软件在不同的浏览器下看到的菜单权限不一样,下图中同一个用户在IE6.0和IE7.0下看到的菜单权限不一样,这肯定是软件中的一个Bug 了。

12、软件在压力之下容易出错

软件在压力之下容易产生的错误,作为一个有经验的测试人员一般都知道:把你的软件在压力之下长时间运行测试,然后看看软件能否在压力之下经的住考验。

13、随机测试

即使测试经过大量的充分的测试,也不能发现软件中的所有缺陷,所以测试人员在测试的时候可以做一些随机的测试,比如胡乱的在软件界面上乱点一通有时候也会发现一些意想不到的软件缺陷。

14、学习他人的经验

最后,作为一名软件测试人员你可以查看公司里的软件缺陷库看看别人报告的软件Bug,从别人的报告Bug思路中你可以学习测试的经验,迅速找出软件中的缺陷。

一、从事软件测试需要的知识

首先,要具备软件工程的基本知识,理解软件生命周期过程中各阶段需要做的工作,及需要达到的目标。其次,需要具备一定的编程经验或者是参与开发项目的经验.然后,需要掌握软件测试方面的知识,包括测试的定义、对象、目的、测试的方法、测试过程等。前两方面我在上学期间均有过接触,因此,就直接进入到了测试工作中。

二、测试要解决的问题是什么

一般来说,大家都会认为程序员按照软件的需求说明书编写好了可以实现需求中定义功能的程序,那么这个软件就可以投入使用了.但是,在用户应用的过程中,会发现一系列的错误,给用户带来很多麻烦.那么如何最大程度地减少软件给用户带来的麻烦,这时软件测试就发挥了很大的作用.因此,软件测试要解决的问题就是寻找软件中未发现的隐藏的缺陷.

三、何时开始测试

按照软件测试的H模型,我们可知,测试是一个独立的过程,它贯穿于软件生命周期的整个过程中,于软件生命周期中的各流程并发进行。因此,我们可以说在软件的整个生命周期中,越早开始测试越好。

四、如何开展测试

这一步可以说是测试工作的重点,关于如何开展测试,我总结了如下的步骤。我认为软件测试基本可以分为测试需求分析,测试计划制定、测试用例设计、测试执行、测试评价这五个步骤,根据测试类型的不同,选择各步骤开始的时间。如果是同一公司中的开发部门与测试部门共同完成的软件项目,那么测试的各步骤需要与开发的各步骤并发执行,如果是作为第三方测试机构,那么上述测试的各步骤开始就要在软件已经成形之后了。

软件测试的第一步是识别测试需求。测试需求即了解测试的规模、测试的内容、复杂程度以及存在的风险。经过测试需求分析,我们可以得出测试要点,这里的测试要点可以包括系统功能方面的测试要点,比如验证系统的某项功能是否符合客户的要求;也可以包括非功能方面的,如验证系统的易用性、可靠性等。

接下来是测试计划的制定。可以分为如下几步:首先,按照测试类型依据的标准确定需要测试的特性,如登记测试需要考虑用户文档、常规要求、功能性、可靠性、易用性这五个特性。其次,确定需要测试的子特性,如功能性需要考虑可安装性、适合性、正确性、一致性这四项。然后,选择相应的测试策略,即对需要测试的几大特性该如何测试。如需要检查用户文档是否完整,需要验证功能是否正确等。再次,需要配置测试的环境,确定测试需要的硬件和软件设备是否准备齐全。最后,需要确定测试的人员及日程安排,为及时高质量的完成测试工作作准备。这个过程需要形成测试计划文档。

再下面就是测试用例的设计,这一部分是测试工作的核心,如何设计出用最小的测试用例集找出软件中尽可能多的缺陷的测试用例,是一个很值得研究的问题。这里有一个通用的测试策略,但对具体的问题不一定是最好的,可以供大家参考:(1)在任何情况下,都应该使用边界值分析法,经验表明,这种方法发现错误的能力最强。

(2)必要时用等价类划分法补充测试用例。

(3)必要时采用错误推测法补充测试用例。

(4)如果有输入条件的组合,就从输入条件及其组合开始测试。

软件测试流程管理体系

测试体系建设与软件测试流程 (初稿)

目录 1.目的3 2.范围3 3.测试过程描述4 3.1 测试流程图4 3.2 活动说明5 3.2.1 需求评审5 3.2.2 编写测试计划6 3.2.3测试用例设计8 3.2.4 测试用例执行9 3.2.5发布版本回归测试12 3.2.6版本迭代回归测试13 3.2.7 文档测试16 3.2.8 测试报告18 4.软件缺陷管理系统—禅道19 4.1 概述19 4.1.1 编写目的19

4.1.2 适用范围19 4.1.3 角色和职责19 4.1.4 禅道简介19 4.2 缺陷状态关系示意图20 4.3 缺陷流转的过程及处理20 4.3.1 基于禅道的项目/测试/Bug管理21 4.4 禅道项目管理流程图21 5.配置管理21 1.目的 本文是对项目软件测试的指导性文件,对软件测试过程中所涉及到的测试理论、测试类型、测试方法、测试标准、测试流程及测试过程中涉及到的角色职责进行总体规范,以有效保证软件质量。 2.范围 本文适用于所有软件测试人员。

3.测试过程描述 3.1 测试流程图 需求规格说明书 测试用例 测试计划 开发计划 评审Checklist 需求评审会议 评审通过 评审 测试版本发布 执行测试用例部署测试环境提交缺陷报告 修复缺陷 确认缺陷是否 验证缺陷 不通过 测试完成通过 测试报告发布上线

3.2 活动说明 3.2.1需求评审 3.2.1.1目的 从源头把握软件质量,并确保开发结果与实际需求相一致,分析需求实现的可能性,功能细节描述无二义,补充需求细节,确定项目周期和时间。 3.2.1.2角色与职责 测试负责人:《需求规格说明书》的编写,以及软件开发过程中《需求规格说明书》的修正; 评审人员:项目经理、开发人员、测试人员等项目干系人; 评审《需求规格说明书》,从全面性、完整性、正确性、一致性、可靠性方面检查《需求规格说明书》,将需求缺陷Checklist提交给产品需求人员,在评审会议上讨论,确定为缺陷后,跟踪需求缺陷直至需求缺陷验证关闭。 3.2.1.3启动标准 《软件需求规格说明书SRS》编写完成

流程管理软件测试的流程

(流程管理)软件测试的流 程

软件测试的流程,包含各阶段会产生什么文档 无论是采用瀑布式仍是其他的产品生命周期模型,软件测试分为如下几个阶段:1、测试需求分析阶段。 测试需求分析阶段主要工作是获得测试项目的测试需求(测试规格)。 输出产物:《可测试性需求说明书》和《测试规格》 2、测试计划阶段。 以测试需求为基础,分析产品的总体测试策略。 输出产物:《产品总体测试策略》 3、测试方案设计阶段。 本阶段主要是以测试规格为基础获得特性测试方案,对于有自动化测试的项目,进行自动化测试的分析,获得测试策略。 输出产物:《产品或者版本总体测试方案》 4、测试用例实现阶段。 本阶段主要是完成各个特性的测试用例的编写和自动化脚本的编写。 输出产物:《产品自动化测试用例》和《手工执行测试用例》 5、测试执行阶段。 本阶段是根据测试策略开展测试执行和回归测试。 输出产品:《产品或版本测试方案》和《缺陷分析方案》 6、评估和关闭阶段。 只对前面的各个阶段的执行情况,完成对测试项目的关闭,同时提供完整的度量数据和项目总结方案。 输出产物:《遗留问题风险分析方案》、《度量分析方案》和《测试关闭方案》软件生命周期的各个阶段如何应用哪些软件测试方法。

画壹个V模型你就明白了:左边为开发过程,对应右边的测试过程,开发自上而下,测试是自下而上 开发过程测试过程 可行性研究验收测试 需求分析系统测试 概要设计集成测试 详细设计单元测试 软件编码阶段 1、需求分析阶段对应生成需求规格说明书,对应测试生成系统测试方案,即为系统测试准备的,该阶段已经完成了单元测试和集成测试,主要是对软件产品的功能和非功能进行测试,几乎不测试代码,所以测试方法以黑盒为主; 2、概要设计阶段对应生成概要设计说明书,对应测试生成集成测试方案,该阶段已完成单元测试,是将各个功能模块组装起来进行的测试,所以也叫组装测试。主要见模块调用是否正常,接口是否可用,数据传输是否正确等,所以用到的测试方法几乎是白盒的方法,如路径覆盖,条件组合覆盖等; 3、详细设计阶段对应生成详细设计说明书,对应测试生成单元测试方案,该阶段是开发人员编码后的第壹个测试阶段,是对开发出来的单独模块进行测试,以确保每壹个功能模块的功能正常,能够构建桩模块和驱动模块来回调用,方法也是以白盒为主。 4、白盒测试的准则是尽可能覆盖程序内部的逻辑结构,黑盒则是尽可能覆盖所有的输入输出接口,包括文档等壹些静态的测试。除常用的测试方法外,仍需补充大范围的随机测试,尽可能达到覆盖率100%。

软件测试流程及规范V1.1

软件测试流程及规范V1.1

二、各阶段具体流程 1.需求分析阶段 立项 需求调研 编写/修改SRS 提交SRS SRS 审核 审核是否通过 达到要求 提交最终版SRS 审核是否通过 审核通过 依据SRS ,项目整体计划,设计、编写《测试计划》 和《测试设计》《测试计划》根据SRS 定义相应的测试需求报告,即制订测试的标准,以后所有的测试工作都将围绕着测试需求来进行,符合测试需求的应用程序即是合格的,反之即是不合格的;同时,还要适当选择测试内容,合理安排测试人员、测试 时间及测试资源等。 《测试设计》 将测试计划阶段制订的测试需求 分解、细化为若干个可执行的测 试过程,并为每个测试过程选择 适当的测试用例。 进入概要设计阶段评审测试计划 和测试设计优化测试计划、 测试设计1.1步骤说明 1、需求定义基本完成,SRS 编写完成。 2、开评审会,由需求调研人员、开发组、设计组、测试组等人员对需求中不清楚、不完整、存在疑义的地方提出问题,相关人员解答并确认。 3、当评审未通过,直接打回,重新修改SRS ,问题解决后,重新提交评审。

4、当评审通过后,依据SRS,项目整体计划,设计、编写《测试计划》和《测试设计》,具体模板见附件。 5、开评审会,由开发组、设计组、测试组等人员对计划和设计中不清楚、不完整、存在疑义的地方提出问题。 6、当审批未通过,直接打回,优化测试计划、测试设计,问题解决后,重新提交评审。 7、审核通过后,进入下一阶段。 1.2测试通过打回标准 1.3、阶段的输出 输入:最新SRS、项目计划 输出:测试计划、测试设计 2、单元及集成测试流程

软件测试工作流程()

软件开发与测试配合 工作流程 XXX软件股份有限公司质量部 目录 1.简介 本流程文件旨在规定一个简单的可使开发人员和测试人员在软件开发的编码阶段相互配合工作的工作流程,其中包括测试与开发的配合、送测单和BUG单的填写、测试循环的结束等部分。开发阶段与测试循环的关系、测试模块的组合与测试原则、BUG的分类评级原则等也在本流程文件中有相关的描述。 鉴于公司的技术要求,目前质量部的测试人员不仅要完成黑盒测试工作,而且还要进行白盒测试中的“代码走查”工作。其它的白盒测试工作,目前还不在测试人员的工作职责之内。 由于公司已经为质量管理部开发完成“辅助测试系统1.0”,因此本测试流程的制定就建立在辅助测试系统之上,如果辅助测试系统有了新的版本,质量部将根据其变化适当调整测试流程。 2.适用范围 本流程文件适用于公司开发软件并需要测试服务的任何软件开发项目组、软件开发人员,以及任何测试人员。

当项目组在辅助测试系统中注册以后,公司领导可以使用本系统查询了解所有在本系统中注册的项目的测试信息,项目的质量管理员可以使用本系统查询了解项目的当前测试进展情况。程序员和测试员都可以使用本系统查询到自己产生的送测单和BUG单。 3.术语、名词定义 3.1 送测软件 送测软件包括一切软件执行必须的文件、数据、数据库配置等。开发人员必须提供所有的详细的资料以保证测试人员可以像客户一样的运行被测软件。 3.2 开发文档 开发人员提供给测试人员的开发文档至少包括以下几种:用户需求,概要设计,详细设计,用户手册等。开发人员应当在开发每阶段完成后三天内就向测试人员传送本阶段完成的开发文档,以利于测试人员的工作。 3.3 测试文档 测试文档包括测试计划、测试用例说明、BUG报告及分析、测试总结,以及测试工作全部完成后的测试报告等。测试文档由测试人员编写并维护,也属于开发文档的一部分。

软件测试Bug之“缺陷分析“篇

软件测试Bug之“缺陷分析“篇 提到Bug,软件缺陷,除了记录一个问题出现的现象和原因以外,对于一个或者多个Bug的分析也非常重要,本文讲述了Bug分析的目的,介绍了IBM的ODC缺陷分析法,已提供给需要进行缺陷分析的测试小伙伴们参考。 Bug记录平台介绍 Bug记录平台,用比较文绉绉的话说是软件缺陷跟踪系统(DefectTrackingSystem,DTS)是软件测试管理系统的核心部分。这里拿华为的缺陷管理系统来举例,网易以及其他互联网公司大部分会使用比较轻量级的开源平台比如Jira平台等。共同之处是对软件缺陷处理过程有一些最基本的要求,大概包括以下几个方面: 1)整个处理过程应该是闭合的,即确保每一个被发现的问题在过程中都能得到解决,在整个过程中追踪缺陷的状态,问题记录在整个周期内都得到维护简单来说可以理解为Bug的状态流转,例如创建、进行中、已解决、关闭等2)每一个被发现的软件缺陷都应该按类别和优先级进行分类 3)对软件缺陷的改正应该进行验证,以确保问题确实被解决、不利的影响已经被消除,并且解决该问题所引起的变化不会带来新的问题 软件项目团队的全体成员就以软件缺陷跟踪系统(DTS)为工作的参照物,形成良好的工作流程和运行机制,构建如下所示的软件测试管理体系:1)测试人员向缺陷跟踪系统报告新bug,在新版本上执行回归测试验证bug 是否正确修改

2)开发人员每天浏览属于自己需要修改的bug,修正bug后及时更新bug 的状态 3)项目经理及部门经理根据缺陷跟踪系统的bug分布信息,跟踪和控制软件开发过程 4)技术支持人员根据缺陷跟踪系统的bug状况,估计软件的发布期限 BUG生命周期全流程: 测试人员提交BUG->开发人员处理->测试回归->关闭 问题单提交必填属性有:Bug主题、描述、重要性、测试类型、是否线上bug、影响的版本、经办人、回归人等 Bug分析目的 一、对测试执行过程进行度量和评估,给出版本质量评估及开发测试改进建议。 1)通过分析特定模块的缺陷发展趋势来给出模块的质量情况。包括缺陷数量增长趋势和关闭缺陷数量的增长趋势。原则上同一个模块的缺陷数量增长趋势是下降的,即缺陷收敛 2)通过分析缺陷所在的模块分布、缺陷引入的阶段点对开发活动及后续的测试活动加以调整和改进,例如模块缺陷多、且大多数是因为设计原因导致的需要考虑该模块是否需要重构,并且测试活动需要加大投入,缺陷少的模块需要综合评估测试覆盖情况,如果覆盖度高说明质量较好,如果覆盖度低需要加大测试投入力度 二、漏测分析及改进措施

软件测试BUG提交规范_模板

BUG提交模板和注意事项 一、BUG提交模板 1.现象描述 <详细描述BUG现象> 2.组网环境 <组网图及简要说明:机箱、板卡(型号、序列号和槽位)、测试仪、连接线缆等描述> 注:简单组网环境或一般性BUG情况下,可只简要描述组网环境,无需组网图。 3.版本信息 <被测设备所有组件版本信息> 软件版本: 硬件版本: 芯片版本: CPLD版本: MCU版本: uboot版本: 4.操作步骤 <详细描述发现BUG的操作步骤> 注:说明发现BUG对应用例名称编号或为非用例发现BUG。 5.期望结果 <预期正确的结果> 6.实际结果 <实际不正确的结果> 7.BUG严重性等级 <初步判定BUG的严重性等级>

8.开发确认情况 <开发确认BUG情况描述及确认人> 注:严重等级以上BUG必须要有开发人员确认 9.附件 <包括:组网图、BUG现象截图、操作产生的系统日志等> 注:严重等级以上BUG必须带有附件,一般性BUG则附件可选。 10.备注 二、BUG提交注意事项 1.请测试人员提交新缺陷时,尽量用最简洁的语言最清晰的描述出BUG的出处、操作步骤、现象、(建议),并尽量截图; 2. 当你的BUG报告以“not repro(不可重现)”打回给你时,测试人员应该反复阅读它, 集中剔除那些没有关系的步骤或词语,再检查是否有遗漏或清晰的步骤,再去找研发人员。研发人员通常是在无法用BUG报告中的步骤重现BUG时才选择这个选项;3. 测试人员在精简空话的同时,应该再仔细检查报告是否会产生误解的地方。测试人员 应该尽量避免使用模糊的,会产生歧义的、主观的词语。目标是使用能够表述事实、清楚的,不会产生争执的词语; 4. 不要使用感叹号或其它表现个人感情色彩的词语或符号; 5. 不要使用含糊的词语(例如,好像,似乎)或网络语言来描述发现的现象; 三、需要注意的地方 当你发现一个BUG时,请考虑如下问题: 1. 同一软件中的相似功能是否有相同的问题? 2.其他的浏览器是否有相同的问题?

软件测试工作流程(个人版)

软件测试流程 测试基本阶段划分 ?测试计划阶段 ?测试设计阶段 ?测试执行阶段 ?测试评估阶段 ?测试验收阶段 文档编写人:龙文 编写时间:2010-8-3

目录 1、测试计划阶段 (3) 1.1、测试计划考虑的问题 (3) 1.2、测试策略 (4) 1.3功能列表 (4) 1.3.1、其他非功能测试 (6) 1.3.2、策略附件要求 (6) 2、测试设计阶段 (8) 3、测试执行阶段 (8) 3.1、执行阶段操作 (9) 4、测试评估阶段 (9) 5、测试验收阶段 (10)

1、测试计划阶段 ?做测试需要做好准备工作,把做一件事需要做的准备工作做好,明确做这件事的目的,最终达成目的并验证结果是我们要做的事情。这要求我们有一个完善的“测试计划书”。 ?测试计划的内容: 1、测试范围:描述本次测试中做的测试范围,如:测试软件功能范围、测试种类等 2、简单的描述如何搭建测试平台以及测试的潜在的风险。 3、项目信息:说明要测试的项目的相关资料,如:输入输出文档,产品描述,软件主要功能 4、人力资源的分配 注: 计划和设计分开编写,最好安排充分的时间去明确测试需求 测试需求:笼统说,就是测试中的所有设计和需求文档。作为本次测试的依据 1.1、测试计划考虑的问题 ?1、要充分考虑测试计划的实用性,即测试计划与实际之间的接近程度和可操作性(必须对需求有透彻的理解)。编写测试计划的目的在于充分考虑执行测试时的各种资源,包括测试内容、测试标准、时间资源、人力资源等等,准确地说是要分析执行时所能够调用的一切资源以及受各种条件限制,可能受到的各种影响。说的再明确一点就是要“计划”“如何”去做“测试工作”,而不是“如何编写测试计划”。 (1)测试内容:对一个软件来说测试计划中会明确本次测试做哪些测试? 如:系统测试:在整个系统测试中会有(界面测试、功能测试、性能测试、兼 容性测试、安装卸载测试、可靠性测试等测试) (2)测试目的:一般多为保证产品质量是否达到预期的指标。这个指标也就是在 测试中定义的结束标准。 (3)测试标准:需要考虑本次测试需要输入那些文档,该项目结束标准定义、测试结束标准的定义?bug级别定义、优先级定义、bug管理流程定义。这个都需要在执行测试事明确。计划中应该包含这些内容。 (4)资源分配:这里分为人力资源、软硬件资源等划分。一般会把人力资源的利用写入一个测试人员任务分配表里,按照不同的阶段,每个阶段提交相应的成果(难度很大)。软硬件资源中主要是在做计划时考虑到需要多少电脑或别的工具,列出清单。 (5)测试风险:大多考虑到的就是项目开发延期、测试人员不足用例无法全面覆盖测试点、时间不足用例无法全部执行、bug无法及时修改导致无法验证、测试人员技能不足导致测试进度拉长。 (6)软件测试策略一般都是分开来做相关测试方案。 ?2、要坚持“5W1H”的原则,明确测试内容与过程。 ◇明确测试的范围和内容(WHA T); ◇明确测试的目的(WHY); ◇明确测试的开始和结束日期(WHEN);

软件测试环境管理规范

测试环境管理规范

修改履历 修改编号版本修改条款及内容修改日期 1 V1.0 初稿

目录 1.概述 (5) 1.1目的 (5) 1.2适用范围 (5) 2.环境使用要求和原则 (5) 2.1环境使用要求 (5) 2.2环境使用原则 (5) 3.硬件环境 (6) 3.1全流程测试环境申请 (6) 3.1.1申请流程图 (6) 3.1.2申请流程说明: (6) 3.2待测系统环境申请 (7) 3.2.1申请流程图 (7) 3.2.2申请流程说明: (7) 3.3测试用机申请 (8) 3.3.1申请流程图 (8) 3.3.2申请流程说明: (8) 3.4硬件环境变更 (9) 3.4.1全流程测试环境变更流程图 (9) 3.4.2全流程测试环境变更流程说明: (9) 3.5硬件环境释放 (10) 3.5.1释放流程图 (10) 3.5.2释放流程说明 (10) 4.环境权限 (11) 4.1权限说明 (11) 4.1.1查询帐户 (11) 4.1.2监控帐户 (11) 4.1.3应用帐户 (11) 4.1.4备用帐户 (11) 4.1.5特殊帐户 (11) 4.2权限申请流程 (11) 4.2.1查询帐户申请流程 (11) 4.2.2监控帐户申请流程 (11)

4.2.3应用帐户申请流程 (12) 4.2.4备用帐户申请流程 (12) 4.2.5特殊帐户申请流程 (12) 4.3应用系统 (12) 4.3.1应用版本变更 (12) 应用版本部署 (12) 应用版本变更 (12) 4.3.2测试数据 (12) 测试数据预埋 (13) 测试数据变更 (13) 5.系统参数变更 (13) 5.1工作时段参数变更 (14) 5.1.1变更流程图: (14) 5.1.2变更流程说明: (14) 5.2非工作时段参数变更 (15) 5.2.1变更流程图: (15) 5.2.2变更流程说明 (15) 6.系统备份 (16) 6.1不定期备份 (16) 6.1.1备份说明 (16) 6.1.2备份流程 (16) 6.2特需备份 (16) 6.2.1备份说明 (16) 6.2.2备份流程 (16)

软件BUG问题处理.pdf

BUG处理情况 一、详尽的项目测试 在项目建设过程中,必须加强测试工作,采取如下措施: 需求转测试 需求人员在完成需求工作后,可以部分转换到测试组,这样可以很好的进行项目移交,保证测试用例的完整性。 测试方案提前编写 测试方案应提前到设计阶段进行编写,当需求初步定型或评审通过后,就开始测试方案的编写工作。测试人员技术设计人员背靠背工作,这就给测试方案的编写争取了更多的时间,保证测试用例的全面性和质量。 测试自动化 测试工作的展开完全靠手工进行是不现实的,必须借助有关的测试工具,提高测试的效率和BUG的管理,达到很好的测试结果。 全面测试 除了单元测试和集成测试外,还要进行功能、性能、安全、健壮、界面、安装、文档方面的测试。 第三方测试 可引入第三方加强功能测试、安全测试、性能测试、系统测试方面的内容。二、工作流程 本项目测试的工作流程如下:

由上图中,可以看到,测试的工作流程主要有测试项目确认、测试策划、测 试执行、问题修正与跟踪、测试关闭。 其中测试规划过程中,需要制定《测试策略》、编制《测试计划》、测试计划评审与批准、调查分析确认测试环境、编写测试用例、测试用例的评审与批准、准备测试数据。 其中测试执行过程中,测试组需要从项目配置人员获取最新的安装及功能手 册,同时获取最新的可测试版本;然后安装、部署、配置、搭建测试环境;测试 执行过程严格按照测试用例,使用测试数据进行输入,并检查输出结果;填写测试用例执行结果;报告测试BUG ;待开发组完成修改完善后进行回归测试。 测试结束后,测试组完成测试报告。 三、测试流程 通常单元测试是在编码阶段进行的,单元测试流程如下所示:获取可测试版本 获取安装及功能手册 搭建测试环境 按用例输入 检查输出 记录用例执行结果 提交BUG 测试项目确认测试策划测试执行问题修正与跟踪测试关闭开始结束 确定测试策略编制测试计划测试计划评审与批准编写测试用例测试用例评审与批准确定测试环境准备测试数据

Bug管理的简单流程

Bug管理的简单流程: BUG的各种状态: ◆新错误(New):测试中新报告的软件缺陷。 ◆打开 (Open):错误被确认并分配给相关开发人员处理。 ◆修正(Fixed):相关开发人员已完成修正,等待测试人员验证。 ◆拒绝(Rejected):拒绝修改缺陷。包括两种情况: 拒绝-不是错误(Rejected-Not Bug):报告的错误不是错误。 拒绝-重复(Rejected-Duplicated):以前已经报告过这个错误,需要指出已经报告过的错误ID编号。 ◆重新打开(Reopen):没有正确修复的错误,需要进一步修复。 ◆延期修改(Deferred):不在当前版本修复的错误,以后的版本修复。 ◆不能重现(Reproduct):开发人员在自己的环境下不能重现的缺陷。 ◆关闭(Closed):错误已被修复。 BUG管理的基本流程: 1、测试人员提交新的Bug入库,此时BUG状态为New。 2、错误被确认,项目经理将Bug分配给相应的开发人员,设置Bug状态为Open, 与此同时,测试人员和开发人员同时收到改变Bug状态的邮件。特殊时候若测试人员非常了解Bug所属,测试人员也可直接分配Bug给开发人员,并设置置Bug状态。 3、开发人员查询状态为Open和Reopen的Bug,若Bug反映的问题是由于开发平 台本身的缺陷或是测试人员操作错误引起时,置Bug状态为Rejected; 4、当Bug反映的内容不包含在当前需求规格说明中,属于升级或者优化功能,且该 Bug的存在不影响客户操作的顺利进行,开发人员可以延迟修复时间,置Bug的状态为Deferred;是Bug则解决并置状态为Fixed,Rejected和Deferred的Bug,开发人员要留下文字说明。 5、测试人员查询状态为Fixed的Bug,然后验证Bug是否已解决,如解决置Bug 的状态为Closed,如没有解决置状态为Reopen。 Bug的状态每改变一次,都会邮件周知相关的人员,让其明确Bug的当前状态。 对于不能解决和延期解决的Bug,不能由开发人员自己决定,一般要通过某种会议(评审会)通过才能认可。 一般输入到库中的Bug,原则性不能删除,及开发人员和测试人员没有删除的权限。 一般管理员有此权限。 对于测试人员和开发人员要加适当的使用权限,测试人员一般只有新增、查询、验证等权限,开发人员一般只有查询、解决等权限。测试负责人和项目经理可以适当地加大使用权限。 Bug的生命周期:

软件测试过程管理-考题

软件测试过程管理-考题-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

一、软件测试过程管理 1. 关于软件测试模型,描述正确的是(C) A. V模型测试的对象就是程序本身,测试与开发可以同一阶段进行 B. W模型测试的对象是程序,需求、设计等,可以支持迭代的开发模型 C. H模型软件测试过程活动完全独立,贯穿产品整个生命周期,与其他流程并发地进行。 D. X模型是事先计划再进行测试。 2. 制定测试计划的步骤:(D) A. 确定项目管理机制预计测试工作量测试计划评审 B. 确定测试范围确定测试策略确定测试标准、预计测试工作量 C. 确定测试构架确定项目管理机制预计测试工作量测试计划评审 D. 确定测试范围确定测试策略确定测试标准确定测试构架确定项目管理机制预计测试工作量测试计划评审 3、编写测试计划的目的是:(ABC)(多选) A、使测试工作顺利进行 B、使项目参与人员沟通更舒畅 C、使测试工作更加系统化 D、软件工程以及软件过程的需要 E、软件过程规范化的要求 F、控制软件质量 4、某公司采用的软件开发过程通过了CMM2认证,表明该公司(C)。 A. 开发项目成效不稳定,管理混乱 B. 对软件过程和产品质量建立了定量的质量目标 C. 建立了基本的项目级管理制度和规程,可对项目的成本、进度进行跟踪和控制 D. 可集中精力采用新技术新方法,优化软件过程 5. (B )可以作为软件测试结束的标志。 A.使用了特定的测试用例B.错误强度曲线下降到预定的水平C.查出了预定数目的错误D.按照测试计划中所规定的时间进行了测试 6.软件测试计划的内容应包括(D)。 A. 测试目的、背景 B. 被测软件的功能、输入和输出 C. 测试内容和评价标准 D. 以上全部 7.下面不属于软件测试过程中的输入类的是(B)。 A. 软件配置 B. 测试用例 C. 测试配置 D. 测试工具 8. 下列不属于测试需求分析阶段的输入的是(A)。 A. 软件测试的方法与规范 B. 软件需求规格说明 C. 软件测试计划 D.软件设计说明

软件测试技术-软件测试管理试题

软件测试技术-软件测试管理试题

第三章软件测试管理 简答题 1.你是如何理解测试的层次和主要的管理活 动? 在软件测试的管理中,以下内容的定义反映测试工作的组织策略: a、软件测试遵循的标准; b、软件测试的工作范畴; c、软件测试环境; d、软件测试产品; e、适用于软件测试活动的软件资源标识规则; f、软件测试的进度安排。 软件测试遵循的标准 组织者在指定范围内选择软件测试遵循的标准,并结合本软件系统的具体要求,使之贯彻到整个软件测试的计划、实现和管理过程之中。根据标准,需要被明确的内容包括:测试阶段和测试文档类型。 可以从三个角度来划分测试阶段:面向测试操作类型的阶段划分、面向测试操作对象的阶段划分、面向测试实施者的阶段划分。测试操作类型包括:调试、集成、确认、验证、组装、验收、操作等。测试操作对象可以是:单元、部件、配置项、子系统、系统等。测试实施者可以是:开发者、测试者、使用者、验收者等。各类标准从不同角度定义测试评审阶段,而测试组织者可以在符合所选标准的同时,结合多个划分因素规定本系统的测试阶段。

各标准规定的测试文档类型也不尽相同。如国标《软件产品开发文件编制指南》规定了两类测试文档:测试计划、测试分析报告;国标《计算机软件测试文件编制规范》定义了八类测试文档:测试计划、测试设计说明、测试用例说明、测试规程说明、测试项传递报告、测试日志、测试事件报告、测试总结报告;《XXXX软件工程化技术文件》定义了三类测试文档:测试计划、测试说明、测试报告。我们认为最后这种规定较易操作:因为,太少的测试文档类型不利于有步骤有层次地定义测试内容,也不利于测试用例和测试例程的良好表达;太多的测试文档类型易使测试组织陷入到繁杂的文档规范和编制中去;而第三种定义较为适中。其中:测试计划在系统分析/设计阶段提交,着重定义测试的资源、范围、内容、安排、通过准则等;测试说明在测试计划明确后开始编制,针对软件需求和设计要求具体定义测试用例和测试规程;测试报告分析和总结测试结果,测试日志是其必要附件。 2.在实际项目中,如何对软件测试进行有效管 理? 我们的项目的生命周期大致分为以下几个阶段:需求阶段、设计阶段、编码阶段、系统测试阶段和客户测试阶段,规定各阶段的流程并指定责任人。按照规程和项目实际情况确定个项目的里程碑,设置多个检验点,由QA监督个检验点评审过程。 通过CMM2的六个关键域职称项目管理以CMM为目标和支撑进行项目的管理。在国内软件开发行业一片混乱中,决定走国际化的标准轨

软件测试过程和管理(二)

[模拟] 软件测试过程和管理(二) 选择题 第1题: 下列哪个不是测试环境的组成要素______。 A.软、硬件 B.技术文档 C.测试工具 D.网络环境 参考答案:B 第2题: 以下活动中,不属于测试计划的内容是______。 A.为测试各项活动制定一个实现可行的综合的计划 B.确定测试过程中每个测试阶段的测试完成标准 C.识别测试活动中各种风险,并给出风险应对措施 D.分析测试需求,并制定测试方案 参考答案:D 第3题: 下列有关测试过程抽象模型的描述中正确的是______。 A.V模型指出,软件测试要尽早准备,尽早执行,只要某个测试达到了准备就绪点,测试执行活动就可开展 B.W模型强调,测试伴随着整个软件开发周期同步进行,而且测试的对象不仅仅是程序,需求、设计也同样需要测试 C.H模型指出,单元测试和集成测试应检测程序的执行是否满足软件设计的要求 D.X模型提出针对完整的程序进行集成的编码和测试 参考答案:B 第4题: 下列哪个选项不属于测试计划要达到的目标______。 A.为测试各项活动制定一个现实可行的、综合的计划,包括每项测试活动的

对象、范围、方法、进度和预期结果 B.为项目实施建立一个组织模型,并定义测试项目中每个角色的责任和工作内容 C.为测试执行活动设计测试方案,编制测试用例 D.确定测试需要的时间和资源,以保证其可获得性和有效性 参考答案:C 第5题: 下列有关软件测试设计的说法中,正确的是______。 A.测试方案应考虑是否可行、是否有效和是否能够达到预期的测试目标 B.基于判定表的测试用例设计方法是白盒测试用例设计方法 C.测试方案设计中可以忽略软件系统的实际使用环境 D.测试开发不是测试用例设计的工作内容 参考答案:A 第6题: 下列有关测试项目结束与定稿测试报告的说法中,正确的是______。 A.测试执行完成,测试人员向测试负责人提交测试报告后,测试项目就可以结束了 B.对当前软件产品存在的缺陷进行逐个分析,认定剩余缺陷对产品质量无重大影响后,即可定稿测试报告 C.审查测试全过程,检查测试计划和内容无遗漏后,即可定稿测试报告 D.当所有测试计划内容完成,测试覆盖率达到要求及产品质量达到定义的标准,即可定稿测试报告 参考答案:D 第7题: 下列哪项工作与软件缺陷管理和追踪无关______。 A.对缺陷应该包含的信息条目、状态分类等进行完善设计 B.通过软件系统自动发送通知给相关开发和测试人员,使缺陷得到及时处理 C.对测试用例的执行结果进行记录和追踪 D.通过一些历史曲线和统计曲线来分析和预测未来的缺陷发展情况 参考答案:C

软件测试BUG分析

工作经验分享---BUG分析 V1.1 发布时间:2014-03-18

文档修改记录 版本号更新时间更新人主要内容或重大修改 戴旭峰初稿 V0.1 2014-02-1 2 戴旭峰修改文档格式以及部分文字错误V0.2 2014-02-1 2 V1.0 2014-02-1 戴旭峰定稿 3 戴旭峰增加BUG分析案例 V1.1 2014-03-1 8

目录 1、我们为什么要对BUG进行分析? (4) 2、我们怎么才能保证我们提交BUG的有效性? (4) 2.1遇到以下情况时的一些建议(适用于以中间件开发的客户端)5 2.1.1 当我们遇到以下情况时 (5) 2.1.2 系统提示进程未响应 (5) 2.1.3 客户端闪退、随机退出现象 (7) 2.1.4 Java异常导致的应用退出 (7) 3.测试过程中遇到的一些问题分析和个人理解 (8) 3.1安装包解析错误 (8) 3.2不同系统平台下功能可能存在着差异或者删减 (9) 3.3考虑同一个问题在类似场景下的表现 (9) 3.4 成功升级后,却发现应用还是老版本? (9) 3.5 利用中间件技术开发的应用被360、金山毒霸检测出病毒、 木马等威胁? (10)

1、我们为什么要对BUG进行分析? 测试的目的就是为了发现BUG,而至于BUG的原因,很多时候我们并不关心。我们会认为这是开发人员的事情,其实这种想法是错误的。因为通过分析BUG,可以有效提高我们对于软件的理解,进而能发现更深层次、严重等级更高的BUG。通过对程序理解程度的提高,就能避免出现反复提交重复原因的BUG。因为这样的BUG提交到开发同事那里,很快就会被关闭,它们毫无价值,反而会降低我们的有效BUG率。 2、我们怎么才能保证我们提交BUG的有效性? 我们在提交BUG时,一定要能够确定是程序本身出了问题,否则不要轻易提交BUG,但是我们又要如何确定这个BUG是程序的问题? 一、首先一定要能重现这个BUG,确定BUG出现的场景,也就是说我们的BUG描述一定要具体和准确。确定BUG出现的场景是尤为重要的,因为它能够直接推导出BUG产生的原因。举个例子,大家都一定都曾经遇到过,我们提交一个了BUG,在我们的机器上可以复现,但是到了开发人员那里就复现不了,或者根据你的BUG描述,开发人员无法重现问题。 这种情况在我们日常工作都遇到过,而出现这种情况的可能性有两种: 1)我们并没有明确BUG出现的场景,这就是我们的问题,我们的BUG描述中可能存在歧义或者不详尽的地方。因此我们的复现路径一定要准确。 2)测试环境的问题,这就需要我们不断的排查从而缩小BUG出现的场景,如:找找第3台机器试试,排除不是机器本身的问题,浏览器版本的问题,浏览器型号的问题,当前网络条件的问题,系统版本的问题等等。这种分析工作不仅仅是开发人员的工作,同时也是我们测试人员的工作之一。 二、BUG本身是否与原有需求存在矛盾? 这种情况比第一种情况更容易判断,这属于业务层次的问题。这同样也为我们带来了另外一个问题,那就是我们对于业务的熟悉程度。对于测试人员而言,熟悉业务可能是我们最基本同样也是最重要的一项工作。一个熟悉业务的测试人员,可以凭借自己对于软件熟悉程度来判断软件中哪部分的功能里可能存在严重问题。

软件测试基本流程与要求要求规范

软件测试基本流程与规范 1目标 制定完整且具体的测试路线和流程,为快速、高效和高质量的软件测试提供基础流程框架。 最终目标是实现软件测试规范化,标准化。 2测试流程说明

3测试需求分析 测试需求是整个测试过程的基础;确定测试对象以及测试工作的范围和作用。用来确定整个测试工作(如安排时间表、测试设计等)并作为测试覆盖的基础。而且被确定的测试需求项必须是可核实的。即,它们必须有一个可观察、可评测的结果。无法核实的需求不是测试需求。所以我现在的理解是测试需求是一个比较大的概念,它是在整个测试计划文档中体现出来的,不是类似的一个用例或者其他. ·测试需求是制订测试计划的基本依据,确定了测试需求能够为测试计划提供客观依据; ·测试需求是设计测试用例的指导,确定了要测什么、测哪些方面后才能有针对性的设计测试用例; ·测试需求是计算测试覆盖的分母,没有测试需求就无法有效地进行测试覆盖; 3.1测试方法与规范 3.1.1测试方法 随着软件技术发展,项目类型越来越多样化。根据项目类型应选用针对性强的测试方法,合适的测试方法可以让我们事半功倍。以下是针对目前项目工程可以参考的测试方法: ?β测试(beta测试)--非程序员、测试人员 β测试,英文是Beta testing。又称Beta测试,用户验收测试(UAT)。 β测试是软件的多个用户在一个或多个用户的实际使用环境下进行的测试。开发者通常不在测试现场,Beta测试不能由程序员或测试员完成。 当开发和测试根本完成时所做的测试,而最终的错误和问题需要在最终发行前找到。这种测试一般由最终用户或其他人员完成,不能由程序员或测试员完成。?α测试(Alpha测试)--非程序员、测试人员 α测试,英文是Alpha testing。又称Alpha测试. Alpha测试是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的受控测试,Alpha测试不能由该系统的程序员或测试员完成。 在系统开发接近完成时对应用系统的测试;测试后,仍然会有少量的设计变更。这种测试一般由最终用户或其他人员来完成,不能由程序员或测试员完成。?兼容性测试 --测试人员 兼容性测试是指测试软件是否可以成功移植到指定的硬件或者软件环境中,例如在B/S项目中各个不同浏览器之间的测试。 ?用户界面测试-UI测试--测试人员 用户界面测试,英文是User interface testing。又称UI测试。 用户界面,英文是User interface。是指软件中的可见外观及其底层与用户交互的部分(菜单、对话框、窗口和其它控件)。

软件研发流程管理办法

软件研发流程管理办法 为加强对软件研发工作的管理,缩短开发周期,提高开发质量,降低开发成本,提高开发效率,特制定软件研发流程管理办法。 第一章、总则 为保证日常工作正常有序的进行,让开发中各个环节更紧凑,更可控,需要尽可能实现软件研发流程的正规化,工作过程的流程化,以便提高软件质量和开发效率,达到项目能按质按量按期交付的目标。 1、软件开发总体遵循项目管理和软件工程的基本原则。 2、项目管理涉及项目立项、项目计划和监控、配置管理。 3、软件工程涉及需求分析、系统设计、软件实现、测试、试运行、系统上线和产品维护。 第二章、阶段成果 根据软件工程的过程理论并结合公司目前的实际情况,制定以下工作流程,并规定了各个重要环节需要提交的交付物。 1、立项:市场需求合同或项目立项单。 2、需求分析:软件需求分析报告。 3、总体设计:概要设计说明书或功能模块描述。

4、详细设计:详细设计说明书,包括数据库设计、软件接口说明等。 5、软件实现:软件源代码、源代码说明或者注释。 6、产品测试:测试报告。 7、产品发布:产品说明书或使用手册。 软件过程成果表:

第三章、岗位设置 根据软件开发过程,主要分为分析、开发和测试三个阶段。分析阶段完成用户需求文档的编写,系统概要设计的编写;开发阶段完成设计文档的编写,代码的编写;测试阶段完成系统的测试,测试文档及其他材料。通过逐渐的调整岗位,明确工作职责,逐步实现项目经理,需求分析工程师,软件开发工程师和测试工程师的岗位设置。 岗位工作内容责任 项目经理1、选定项目组成员,成立项目组,安排任务分工。 2、与客户进行沟通和协调(业务需求或非业务需求方面),以及需求调研工作。 3、制定项目开发计划,包括需求,设计,编码,测试这几个阶段的计划。 4、制定小组开发进度表, 对组内人员工作进度监控。 5、对文档的质量进行检查、把关。 6、定期召开项目会议,把控项目进度。 1、对客户的沟通协调工作负责。 2、对软件的开发效率、质量负 责。 3、对文档质量负责。 4、对整个项目的进度,质量等 负责。 需求分析工程师1、与客户进行沟通,负责需求调研工作,汇总需求分析文档,并编写系统总体设计方 案。 2、遇见需求变更时,分析需求变更内容,并与项目经理一起负责对需求变更进行评估。 3、与软件开发工程师一起完成详细设计文档的编写。 1、对用户需求分析的质量负责。 2、对项目组所有成员正确理解 项目需求负责。

软件测试流程管理体系

测试体系建设与软件测试流程 (初稿)

目录 1.目的 (4) 2.范围 (4) 3.测试过程描述 (5) 3.1 测试流程图 (5) 3.2 活动说明 (6) 3.2.1 需求评审 (6) 3.2.2 编写测试计划 (8) 3.2.3测试用例设计 (10) 3.2.4 测试用例执行 (12) 3.2.5发布版本回归测试 (14) 3.2.6版本迭代回归测试 (16) 3.2.7 文档测试 (18) 3.2.8 测试报告 (20) 4.软件缺陷管理系统—禅道 (21) 4.1 概述 (21) 4.1.1 编写目的 (21) 4.1.2 适用范围 (21) 4.1.3 角色和职责 (21) 4.1.4 禅道简介 (21) 4.2 缺陷状态关系示意图 (22) 4.3 缺陷流转的过程及处理 (22)

4.3.1 基于禅道的项目/测试/Bug管理 (23) 4.4 禅道项目管理流程图 (23) 5.配置管理 (24)

1.目的 本文是对项目软件测试的指导性文件,对软件测试过程中所涉及到的测试理论、测试类型、测试方法、测试标准、测试流程及测试过程中涉及到的角色职责进行总体规范,以有效保证软件质量。 2.范围 本文适用于所有软件测试人员。

3.测试过程描述 3.1 测试流程图 需求规格说明书 测试用例 测试计划 开发计划 评审Checklist 需求评审会议 评审通过 评审 测试版本发布 执行测试用例部署测试环境提交缺陷报告 修复缺陷 确认缺陷是否 验证缺陷 不通过 测试完成通过 测试报告发布上线

3.2 活动说明 3.2.1需求评审 3.2.1.1目的 从源头把握软件质量,并确保开发结果与实际需求相一致,分析需求实现的可能性,功能细节描述无二义,补充需求细节,确定项目周期和时间。 3.2.1.2角色与职责 测试负责人:《需求规格说明书》的编写,以及软件开发过程中《需求规格说明书》的修正; 评审人员:项目经理、开发人员、测试人员等项目干系人; 评审《需求规格说明书》,从全面性、完整性、正确性、一致性、可靠性方面检查《需求规格说明书》,将需求缺陷Checklist提交给产品需求人员,在评审会议上讨论,确定为缺陷后,跟踪需求缺陷直至需求缺陷验证关闭。 3.2.1.3启动标准 《软件需求规格说明书SRS》编写完成

软件测试缺陷(Bug)写作注意点

软件测试缺陷(Bug)写作注意点 提供准确、完整、简洁、一致的缺陷报告是体现软件测试的专业性、高质量的主要评价指标。遗憾的是,一些缺陷报告经常包含过少或过多信息,而且组织混乱,难以理解。由此导致缺陷被退回,从而延误及时修正,最坏的情况是由于没有清楚地说明缺陷的影响,开发人员忽略了这些缺陷,使这些缺陷随软件版本一起发布出去。 因此,软件测试工程师必须认识到书写软件缺陷报告是测试执行过程的一项重要任务,首先要理解缺陷报告读者的期望,遵照缺陷报告的写作准则,书写内容完备的软件缺陷报告。本文将阐述软件测试缺陷报告的读者,描述软件缺陷报告的主要组成部分和各部分的书写要求,指出某些常见错误和实用改进方法,最后总结了缺陷报告的写作要点。 1. 缺陷报告的读者对象 在书写软件缺陷报告之前,需要明白谁是缺陷报告的读者对象,知道读者最希望从缺陷报告中获得什么信息。通常,缺陷报告的直接读者是软件开发人员和质量管理人员,除此之外,来自市场和技术支持等部门的人也可能需要查看缺陷情况。每个阅读缺陷报告的人都需要理解缺陷针对的产品和使用的技术。另外,他们不是软件测试人员,可能对于具体软件测试的细节了解不多。 概括起来,缺陷报告的读者最希望获得的信息包括: ?易于搜索软件测试报告的缺陷; ?报告的软件缺陷进行了必要的隔离,报告的缺陷信息更具体、准确; ?软件开发人员希望获得缺陷的本质特征和复现步骤; ?市场和技术支持等部门希望获得缺陷类型分布以及对市场和用户的影响程度。 软件测试人员的任务之一就是需要针对读者的上述要求,书写良好的软件缺陷报告。 2. 缺陷报告的写作准则 书写清晰、完整的缺陷报告是对保证缺陷正确处理的最佳手段。它也减少了工程师以及其它质量保证人员的后续工作。 为了书写更优良的缺陷报告,需要遵守“5C”准则: ?Correct(准确):每个组成部分的描述准确,不会引起误解; ?Clear(清晰):每个组成部分的描述清晰,易于理解; ?Concise(简洁):只包含必不可少的信息,不包括任何多余的内容; ?Complete(完整):包含复现该缺陷的完整步骤和其他本质信息; ?Consistent(一致):按照一致的格式书写全部缺陷报告。 3. 缺陷报告的组织结构 尽管不同的软件测试项目对于缺陷报告的具体组成部分不尽相同,但是基本组织结构都是大同小异的。一个完整的软件缺陷报告通常由下列几部分组成: ?缺陷的标题; ?缺陷的基本信息;

相关文档
最新文档