与其临渊羡鱼,不如退而结网!

对公司流程改进的几点看法

上一篇 / 下一篇  2007-04-13 22:28:51 / 个人分类:测试流程

 

一直以来都想更新自己的空间,可是都由于各种原因而搁置了。现在,终于腾出时间更新一下了。闲话少说,我们就直奔主题。
s,a E_ keTs0以前的工作,由于没有积累下相应的文档,导致在人员流动时,使项目进度受阻。为了避免类似问题的发生,开始重新整顿测试部,并且根据公司的实际情况,重新定制测试流程。这个测试流程基本可以归结为以下四点:51Testing软件测试网*Q:a)S0W8bth
一、完善需求,并对需求做评审
@~1ktzptx-m0原先项目的需求文档很不健全,而且更新也不及时。拿起需求看的时候,可能软件本身已经调整了
n次,可是需求本身一次都没有更新。这就致使需求与实现完全脱节,测试人员无法根据需求来编写相应的测试文档。而为了应对迎头压来的工作任务,只有放弃文档,摸着石头过河。。。一切都凭借测试人员的经验及对业务知识的领悟来测试。这样做虽然解了燃眉之急,但是,当测试人员流动的时候,新加入的成员又需要很长一段时间来熟悉、摸索软件的业务功能点。无论对于公司,还是项目本身进度来说这都是不可接受的。要解决文档的问题,首先就得从源头抓起。为此,项目经理从需求开始抓起:要求提供完善的需求,并在需求完成之后进行评审。目的就是希望可以把设计缺陷消灭在需求阶段,省去很多不必要的麻烦评审会主要由项目经理主持,测试部全体成员负责评审,系统分析员负责解答相关问题。评审结束后,与会者提交相关的需求评审记录。根据需求评审记录,系统分析员进行相应得更新。51Testing软件测试网3]:rP'YI*^;~
二、编写测试大纲,并对大纲进行评审
F"NL7P+PZ0在需求更新后,测试设计人员提取相应的测试点,编写测试大纲。采取这样的流程主要是为了避免设计人员在设计之初就过分专著于细节,而忽略整体。设计人员可以在充分理解需求的基础上,提取测试点。理想状态下,就是测试大纲完全覆盖需求。

%za*f6q+e z0

为了避免测试设计人员在设计上有所疏漏,在大纲完成之后,会再次召开评审会。大纲评审其实是同行评审,由测试人员共同参加,并针对各个测试点逐一探讨。评审后,提交相应的大纲评审记录,相关的测试人员对大纲进行修订。

} oca_0Yi ?Y4RR0

三、编写测试用例
#P;_4uzDEL(e0根据修订后的测试大纲,测试设计人员开始设计测试用例。由于已经对需求进行了充分了解并提取了相应得测试点,测试用例设计起来相对容易且不易丢掉测试点。虽然用例设计很重要,但是由于时间因素不能进行同行评审。仅由测试执行人员参照大纲查找是否有遗漏的测试点。51Testing软件测试网v:wIq+sLwk!}%am

四、执行测试,并提交缺陷
Y7Vh7`P\6Y0根据测试用例,测试执行人员执行测试。并根据内部缺陷标准判定并提交缺陷。开发开发对
open的缺陷如无异议,则进行定位、修改;如果出现分歧,则召开缺陷评审会,由缺陷评审委员会确认该缺陷是否合理。
,Cd%n)rV@+@:}y-S'P0
LkS]}Hi"{0可以说这个测试流程能够执行下来,离不开公司领导的支持。但是,有好的流程,并不意味着就一定能取得好的工作效果。现简单总结一下,有以下几点不足之处:
7FMY(LTOm0对于测试用例方面:
%D"y5gL:_ a0首先,遗漏部分测试点。虽然测试执行人员对用例进行检查,但是仍然出现测试点未覆盖的现象。其次,测试用例设计不够严谨,甚至出现错误的预期结果。其中有一部分原因是时间的问题,来不及进行检查。但是,毋庸置疑测试设计人员的责任占主要地位。作为一名测试人员,无论文档设计的如何,起码不能出现这样失误。最后,就是书写不够仔细,错字、误用数据均出现。
4RGwV|J0对于测试执行方面:51Testing软件测试网'p8FQ)z ^i1S!\8a9k
首先,测试执行人员未遵循用例进行测试执行。一部分原因是由于用例本身质量不高,可执行性欠佳;另一部分原因是测试执行人员对用例的不信任——部分可以归结为用例质量导致的问题,部分原因是对测试设计人员能力的不信任。其次,测试设计与测试执行分离,测试设计人员不参与测试执行。从一方面看,这样有助于明确责任分工;但是从另一方面看,也有一定的弊端。众所周知,测试不可能做到穷尽测试。当然,用例也不可能覆盖所有的路径,只能提取典型数据进行测试。如果测试设计人员参与执行工作,就能够对未覆盖的路径进行补充测试;并可以加深对业务逻辑的理解,更好的设计用例数据。再次,为了避免出现无文档的情况,应对随机测试的测试点做出记录,留待以后参考。最后,对于随机测试发现的缺陷,应该补充相应的用例充实到用例库中。

6m ptH8lE4h&A0


{.J o*Nd`C [ N0对于缺陷提交方面:
b;xB-\wJInz0根据内部缺陷标准进行判定并提交,最后根据
openclosed的缺陷总数整理测试报告,并进行发布版本的质量评定。由于有内部发布标准,因此,对于一些不能重现的缺陷,如读取异常,将做删除处理。这样就存在一个问题:即不能重现的缺陷不算缺陷!一旦某天可以重现这个缺陷,将作为测试人员的遗漏进行考核。虽然不能重现不利于开发人员定位并修改,但是不等于这个缺陷未存在。个人意见不能重现的缺陷也应该保存,可以根据具体情况,不设置为open状态。做为备份数据,以供后来参考。51Testing软件测试网,PB*e*a.E3d3Og:Vep

综上所述,投入大部分精力写出来的测试文档资料,参考价值并不大。如果不针对设计及执行方面做进一步改进,那么对测试流程的改进又将流于形式。目前,针对这些问题仅想到如下的解决方式:51Testing软件测试网CBn a-uSq
1、测试设计人员间进行交叉评审,并提交相应的记录。根据评审结果,进一步完善文档。
J6y'OBx,Zb7?8U"b0
2、测试设计人员依据大纲进行补充性测试,尽量采用用户数据模拟真实操作。
F|K N9V5t0
3、测试执行人员在测试初期依据测试用例进行测试,并适量做随机测试。测试后期,主要根据用例执行。
@0d}i;M,{0
5x[tK(Yb*QaA0不知道各位兄弟姐妹对于测试流程方面有没有更好的建议,希望大家能够共同探讨!

PYE@"q0f0

TAG: 测试用例 评审 测试大纲 软件测试流程 测试流程

gp_jl的个人空间 引用 删除 gp_jl   /   2007-04-20 16:50:15
To Joan2005:测试大纲主要包括两种:一种是根据需求提取的测试点;另一种则是根据具体业务产生的外延测试点。测试大纲的具体条目包含测试点编号、测试点描述以及设计者三项信息。因为我们公司是使用VSS对版本文档进行管理的,所以如果没有相应的文档版本管理工具,就需要再指定一些相关的信息,如模块名称,版本等。在设计大纲的时候,我们主要关注于全局,着眼于点。仅列出相应的点,及一些特殊情况,但是不涉及具体的数据设计(数据主要都是体现在用例里面)。
To sanwong823:我很赞成你的意见:即设计人员应该跟进用例的执行。但是,由于我们公司要对其他模块的文档进行补充工作,所以,基本上到了用例设计完就要开始下个模块的需求评审。因此,设计人员根本没有时间、也没有精力去跟进用例的执行工作。这点很遗憾:(目前执行的完成基本上就是靠测试执行人员的责任心。相应的考核标准就是依据版本发布后客户反馈的问题,来追溯问题的根源。并对相应责任人进行一定的物质惩罚,呵呵。虽然这样做,能够对最终的责任进行认定,但是却没有将缺陷消灭在发布前。因此,可以说这不是一种很有效的考核方法。不过,我们的流程还处于摸索阶段,一切都还在进行时并是可改进的。希望在不久的将来可以想到一个更好的方法来处理这样的问题。
毛毛虫 引用 删除 Joan2005   /   2007-04-19 08:38:34
有这样的领导不错.
对于你说的第二点,编写测试大纲,主要包括哪些内容,与用例的区别在哪里?怎么从整体把握而不过分专注于细节?
既然选择了远方…… 引用 删除 sanwong823   /   2007-04-18 23:57:23
是啊,我们推广的测试流程跟你们的相似,最近是第一次比较正常的按照这个流程来走,结果今天查一下执行的情况,发现有的案例执行通过了,但查看数据却上没有的,可以明显地看出执行人员没有正确地理解案例又或者是自己的案例没有写清楚又或许是其他的原因,总之另人很不放心。再者可能有时候程序的设计有些特别的时候,而我们的案例只是针对测试点的结论情况,使得所设计的案例步骤不完全,还有可能这中测试实际是没有测试到需求点,这是很危险的,所以啊,设计案例的人员还真的需要去跟踪一下才行啊
 

评分:0

我来说两句

Open Toolbar