一个测试菜鸟的X项目总结

发表于:2011-12-29 10:56

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:许奔    来源:51Testing软件测试网采编

  X项目的测试工作到今天算是全部结束了,除了后期维护必要的一些回归测试和用户使用手册的撰写外,整个测试阶段告一段落。

  从10月底进入项目,在测试经理的帮助下开始学着写项目测试文档,到根据文档的每日功能测试及回归测试,再到整个项目进行迭代后对测试文档的重新架构及整体回归测试,直至最后的统一交付测试,我个人提交总BUG数为244个。

  在这244个BUG的提交和回归过程中,在测试文档的写作及修订中,我对整个项目的逻辑及架构逐步清晰,对项目之间所需的复杂交互的认识也越发深入,对项目功能逻辑上的测试如何进行也更加明晰。

  下面我简单谈谈对项目的认识、经验和教训,以及对未来改进的一些建议!

  一、对项目的认识

  进入这个项目是在今年十月底,当时测试经理和C已经把Setting(当时是Admin)部分的测试结束了,所以我直接开始接着D的测试文档继续往下写(当时是从Revenue的Report部分开始,即现在的Report模块)。因为跳过了逻辑部分,所以对整个项目逻辑理解很不够,开始写的测试文档也非常浅显,就是描述了一下页面布局。这里我的感觉是,测试人员进入项目初期,项目经理有必要指派专门人员与测试人员沟通,帮助其理清整个项目的顺序逻辑。当时C简单地跟我介绍了一下整个项目,我的感觉是沟通不够,对逻辑理解比较欠缺。

  Report部分写完,就直接开始测试——用自己刚写完的文档进行测试,效果显然不够理想。因为测试人员刚进行该模块测试文档的编撰,再让他对该模块进行测试,这样做的一个后果就是,测试人员会先入为主地觉得自己不需要按部就班地照着文档进行测试(因为文档就是自己写的)。还有一个很大的问题就是,倘若测试人员在文档撰写上存在严重漏洞的话,他在测试时仍然不可能发现自己的漏洞所在。所以我建议测试文档撰写人员与测试人员最好不要是同一个人,这样有助于发现测试文档构建的漏洞。

  测试完Report后,紧接着开始进行Expense模块测试文档的撰写。这时我开始接触到一些逻辑,即Expense与Setting部分联系的逻辑。这时遇到的问题最多最杂,随时随地都需要与C,甚至项目经理进行沟通。由于之前对主功能(Setting部分)的不熟悉,这种一边沟通一边撰写的测试文档可以说是漏洞百出。由于项目时间也比较紧,我需要在一周内完成整个Expense模块的测试文档,所以最终完成的文档很不理想。这里我觉得还是之前沟通不到位的问题,应该有一个对整个项目非常熟悉的人来帮助测试人员理清整个项目逻辑再进行测试文档撰写,而不是一开始就撰写测试文档。

  接着就是根据自己撰写的Expense文档对Expense模块进行测试,效果也不够理想。这里我还有一个建议就是,如果测试人员在初始进入项目时没有得到及时沟通,至少需要给他一周时间先对主功能(即Setting部分)进行完整测试,对照需求手册及主功能发现的BUG,对主功能进行深入理解。

  Expense测试完成后,开始对整个项目进行回归测试。在这个过程中,我逐渐理清了整个项目的逻辑,也开始试图修改以前的文档。但由于文档量太大,文档结构不够清晰,时间也比较紧,修改难于进行。大部分原因是我经验不足造成的,之前撰写测试文档时,思路过于混乱,想到哪里写到哪里,导致最后文档难于维护和修改。

  回归测试结束后,整个系统逻辑已经比较清晰。这时项目进行新一轮的迭代,用户需求改了很多,其中包括增加、修改大量功能、名称,以及对整个系统结构进行重构。这对测试文档而言改动点非常多(包括结构顺序改变、测试编号订正、功能模块名称修改等),而且需求文档并未因此变化,造成最后测试文档与需求文档的不匹配。这是一个协调的过程,系统迭代后,需求文档应及时随着系统进行修改。

  迭代开发过程中,测试基本上是项目改到哪就测到哪,这里面最大的问题不是发现修改模块的BUG,而是发现修改该模块后牵涉到的其它模块出现的BUG。这种连带BUG的产生可以说是防不胜防,让测试人员苦恼不已。到现在我也没想出解决办法,只能说对模块之间的联系及交互逻辑理解仍需加深。

  迭代开发后期,开始对整个系统从头回归一遍,这时候又发现了许多以前从未出现的BUG。这个时期大家都很烦躁困惑,曾经运转良好的页面,突然出现存储问题;曾经更新正常的功能,突然无法更新;曾经显示正常的Excel,突然显示错误……这些都让人苦恼,当然,这些应该都是正常现象。测试人员在测试后期尤其需要提高警惕,不能漏过任何一个功能点,更不能忽略任何一次貌似无用的查询、翻页、按键。

  这段时间我们开了几个会,会上我提出希望得到开发人员的支持,让每个开发人员将自己负责的模块所对应的测试文档Review一下,这个观点得到大家的支持,也定下Review的时间,但后面由于项目进度越来越紧,加上BUG太多,终于不了了之——现在想来,这是整个项目最不该漏掉的一块!希望在未来的项目中,无论任务量再大,时间再紧,开发人员也应该抽出一部分时间Review一遍自己模块所对应的测试文档,确保测试覆盖率!

  最后,是大家一起进行的交付测试,人员包括了所有的编程人员及测试人员。这期间,除了对基本功能的回归测试外,还包括了并发测试及性能测试(这主要是编程人员在做),除此之外,我将过去提交修正过的所有BUG重新验证了一遍。在并发测试中,我们发现了很多之前单人测试难以发现的并发问题(包括多人一起提交,一起选择,一起修改等等),并发问题可以说层出不穷,甚至包括了同一台电脑打开两个页面分别进行修改的问题(由于我从一开始就是打开两个页面来测,一个为用户本人,一个为该用户代理人delegator,所以有些问题在早期已经暴露),这是测试中的一个重点,也是比较严重的漏洞,需要在以后多加留意。

  在验证过去修正过的BUG时,仍然发现不少问题,有些是BUG本身的问题,有些是BUG附带问题,还有很多验证时联想到的问题。这一验证过程效果非常明显,所以我建议在项目末期有必要将过去修正的BUG重新认真验证一遍,可以在短时间内收到奇效。

  至此,整个项目的测试算是告一段落。用户过来测试后提出一些BUG,经过分析,绝大部分属于用户的一些想法,与测试漏洞无关,整个测试算是圆满结束。

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号