达安健康测试之一——关于需求的思考

上一篇 / 下一篇  2012-09-27 09:35:59 / 个人分类:杂谈

.~Vsn"gi^h%x4t0`0  引子:项目前期测试人员未参与到项目中,开发人员只了解自己的功能业务、测试与开发的沟通常因需求理解不一致而向项目经理确认需求的情况;基于以上的劣势,现提出一些个人的看法:51Testing软件测试网1a'L9p9_,I~3eMj4P\g

51Testing软件测试网a&^7J-w/B

  在进行软件测试时,首先确定我们的目标。我们需要开发1个高质量的软件系统吗?如果是肯定的,我们不妨来设计一个大家可以接收的需求挖掘和评审方法。

sH_Ie P ~A0

8Wq E#C[[0  一、项目前期项目组参与需求调研工作的必要性

t-~b6@`)c1I H051Testing软件测试网R G v fO\!pQr/X

  在项目立项后,相关项目负责人进行需求调研与需求整理。俗话说:“三个臭皮匠顶个诸葛亮!”在需求调研时,整个项目团队参与到需求调研的研讨会中个人认为是很有必要的。就需求获取有1个小方法:

![G I|q1@9~G p0

0m:K?9^;i0  1)需求方向项目开发组以小组的讲解的方式提出需求,并讲解系统中的每个线上业务以及线下业务。51Testing软件测试网 V%u(PJ&@(d$y @H

@h4ta]c/r4o0  2)需求人员记录好每条需求,其它干系人记录好不清楚或不明确的的需求;等待需求人员讲解系统的需求完毕。51Testing软件测试网:Rmf)|3`JBO

B i-bF9eU8@bw D6F D0  3)每个人把有异议或不清楚的需求拿出来讨论。

o:IzO#Jt0

(`oGr;G \t,~0   项目组参与需求调研的好处:1、每个人的经验不一样对需求的理解不一致,可以发现很多隐性需求(因为用户不了解系统实现的过程,需求转换为一个系统,系 统中必然或多或少会有一些隐性问题的存在)2、项目组参与到需求调研可以让项目组成员对系统的全局有个深入认识,开发人员在开发过程能更好把握程序实现细 节;测试人员根据一些测试经验可以对系统的需求合理性、准确性作进一步的学习和校验。

1c+o ~Y+A1|s0

&jn9_"jjA1h0  二、需求评审的方法51Testing软件测试网/dkW|'Re7vS8zj

|O-I%Ca&ip[-_E v$q0  项目相关责任人整理好需求并编写成文档后,测试人员对需求进行评审。

8j(x!I"t1Zy K#uH0

2V;cRgb4iu"B`o0   在评审前1)选择2个经验相当的测试人员2)测试人员在评审前先仔细阅读一遍需求说明文档。此刻开发进行需求评审,2人一起同时对每条需求的看法进行沟 通,如果意见一致,这条需求则标记为通过,遇到意见不一致时,标记此条需求待定;当整篇需求审查完毕后,对意见不一致的需求进行讨论并得出这条需求的正确 结论并修改需求通知需求相关责任人。51Testing软件测试网(x$f&g,J_Bu s"a Y

51Testing软件测试网GDKMS$i

  三、开发人员对系统需求转换功能点的重要性51Testing软件测试网,H5[Y!I%{{oK

51Testing软件测试网L0~/^v1a

  开发组进行概要设计时需要把整个系统的流程以图表的形式进行分解,展示系统的整个业务逻辑。如果开发人员对系统模块的关联性熟练掌握,对数据的流向和数据准确性就有了1个很好的把控。51Testing软件测试网+H KIW2Ip,D8t0\

T*}Ip&U ~ UX0  详细设计时详细设计文档中把1个功能模块的功能点的实现进行详细说明,某个功能点从哪里获取哪个字段,某个字段的修改对下个模块有什么影响,这些细节性规则需在详细设计文档中备注说明。51Testing软件测试网Xs"X"R NFl

51Testing软件测试网|y'}8e c

  如果开发人员对整个系统或自己的模块有了一个全局的认识,代码的可靠性和稳定性自然提上去了。51Testing软件测试网zjOskr

e+Y{N {W|W)P5k0  四、测试人员掌握需求后,须吧需求转换为系统测试的测试点51Testing软件测试网GO.ZTwQ^;r&z

51Testing软件测试网z4^i1Je-k"_$Q,Kb

  现在开始来分解分解系统,分解系统的思路是:线---à点---à面

y pCR T.`4g051Testing软件测试网8OrK0WG%O

  我们首先来抓住主“线”--即系统都有1个主流程和多个分支流程,首先保证各个流程是否畅通,

H]+~za$P051Testing软件测试网"pmz3E/_O]

   其次我们关注的重点是系统的核心功能点的某个功能点的特殊逻辑校验正确性、以及核心功能点的数据流向是否准确、修改基础数据中的某个字段或某条数据是否 可用对其它模块的影响,保证基本功能“点”均正确。然后考虑异常流程、组合功能、数据显示、数据刷新方式、提示信息、操作优化等问题“面”面俱到的测试。51Testing软件测试网/x[Pb"nzq

51Testing软件测试网0S_ C vI R

  确定好测试思路后,开始测试点的设计,在测试用例或测试点设计前,采用结对方式分解系统。

H~] v:S#~8x2i+? P051Testing软件测试网 EY.x C1gE V @ E/s

  1)由其中1个测试人员对系统的测试点进行讲解,第2个测试人员记录。51Testing软件测试网 t'H N G3NS-{"rt

51Testing软件测试网o-V%?h:c

  2)由另一个测试人员对系统的测试点进行讲解,第1个测试人员进行记录;然后把2个人的测试点进行对比、整合。把测试点转化为详细测试用例或转化为详细用例图标去展示系统测试点。

U%M$k5l0\$o4t"QM5l051Testing软件测试网u+I/J)U,lW4}-T C

  五、变开发边测试的常见应用

4s RASp7]051Testing软件测试网?iV:e M6p2jWZ8l

   当开发人员开发好1个功能模块后,发布到测试环境中,测试人员对1个个模块的功能点进行逐个测试,当一个大模块集成了好几个小模块后,对这个大模块中几 个小模块之间的数据流向、数据准确性、数据显示刷新进行测试;依次类推下去直到整个系统集成成1个完整的系统,在这个测试过中我们做了单个模块的测试以及 模块模块与模块之间的测试,这就是集成测试的过程。

.n}J+me| cK7_0

1c9xv2j1KWt0  六、系统测试为主开发修改Bug不断完善系统的过程

v-p Y(D*Dv3o+De051Testing软件测试网6v|o uH;w;z

  经过前几轮的集成测试,系统的质量已有了一定的保障,此时系统已集成成一个完整的系统,现在咱们拿一些真实数据,分别取几组正确数据、几组错误数据来走系统的主流程、分支流程来考察整个系统的数据流、业务规则准确性等;发现问题及时反馈并修复直到系统上线。51Testing软件测试网qDZ Ra

.v)R0v |4Q"R iIf]0  利用以上的各种方式提高交流、沟通、观点分享整合的基础上充分提高工作效率来达到提高软件质量的一个目的。在这里测试为项目组服务、为软件质量服务、为用户满意度服务,测试与开发进行高度沟通共同实现项目的成功而努力。51Testing软件测试网 HF ]}y

m4r Cj7s CfQ$S0版权声明:本文出自 zhifei.xie 的51Testing软件测试博客:http://www.51testing.com/?25453651Testing软件测试网hB G@x R


TAG:

 

评分:0

我来说两句

Open Toolbar