谁都是自己问题的答案

每周一问:当项目出现空闲时,如何开展测试工作?

上一篇 / 下一篇  2008-12-23 10:50:32 / 个人分类:论坛活动

查看( 4733 ) / 评论( 35 )
如果项目出现空闲时,如何开展测试工作

当一个项目进展到一定程度时,参与项目的某些人员可能会完成自己的任务,这时该如何安排测试工作。

或者由于开发进度等影响,处于一段真空期时,该如何安排测试工作?


参与讨论:http://bbs.51testing.com/redirect.php?tid=136139&goto=lastpost#lastpost

TAG: 论坛活动

creatysun发布于2008-12-22 13:19:19
沙发?占个座 ,稍后奉上我个人见解

忙了这么久才回来编辑,不好意思!下面谈谈我的看法:
测试是质量体系很重要的一环,测试的目的是保证产品质量,测试体系的可持续发展直接影响到测试质量,所以在项目出现空闲的时候,我们就应该好好考虑一下怎么完善测试体系,完善测试体系我们有一些工作需要做:
1、总结前面做的测试工作,完善测试流程。我们上网可以搜到很多测试流程,而且都很完整,很体系,但是其中的某个环节可能并不适合当前项目使用,我们要结合项目实际情况来改进流程,可以简化某些方面,找到关键控制点,使流程跟符合项目使用。
2、提升测试人员素质。测试需要的知识面很广,而我们大多数人的知识只局限于所在领域,在项目空闲的时候,我们可以来拓展测试人员的知识,比如:网络协议、数据库、操作系统;还有质量管理方面的,CMMI,还有行业领域知识,可以为下面的项目做好准备,做这些可以通过多种形式,可以咨询培训,也可以分工去研究,然后分享。
3、评审用例。据了解很多项目的测试用例的评审都是在匆忙之中进行的,测试用例的质量并不是很高,在项目出现空闲的时候,我们正好可以回过头来,完善测试用例的质量,在评审测试用例的过程,同时也可以提高测试人员的水平。

[ 本帖最后由 creatysun 于 2008-12-26 09:39 编辑 ]
不冲动是年轻人吗? wssgily 发布于2008-12-22 15:10:43
   测试空闲期肯定在一个团队中始终都会出现的,如何利用好空闲期,才能真正体现出一个团队是否是一个学习型的团队,是否是一个持续改进的团队。

    缺陷的根源性分析,到底是什么原因导致了缺陷的发生,在哪个阶段发生,修复的成本是多少,如何规避类似的错误再次发生,从流程的角度,技术的角度还是组织制定相关规则去规避这种问题,缺陷分析无论从什么时候都应该是测试团队的一个重要课题。

    培训,测试空闲期,定制相关培训是一个比较不错的做法,一是提高测试整体的实力,二是可以针对项目中出现的问题,从全面的角度去分析一些问题,三是通过培训还可以使下个项目的效率得以提高。比如说工具的培训,相关业务知识的培训,好的培训是在最需要的时候适时出现的。

    项目总结,整理文档,优化流程,提高生产效率。在项目的空闲期,通过分析以前的项目,整理一些文档,比如说Checklist,模板,最佳实践等等,通过分析以前测试项目中出现的问题,把不足的地方都罗列出来,然后制定相关的措施并跟进,优化一下测试开发过程中的流程,使整个团队和组织流程结合得更紧密,从而提高生产的效率以及测试的质量。

    最后,个人还应该从技术角度提高能力,提高开发代码的能力和效率,提高测试用例的覆盖率和命中率。测试人员以后的发展趋势肯定是又要懂测试还要具有开发代码的能力,因此编写代码的能力,始终是测试不能回避的一个问题。


[ 本帖最后由 wssgily 于 2008-12-25 22:04 编辑 ]
achong252159676的个人空间 achong252159676 发布于2008-12-22 16:22:07
可以对以前忙的时候拉下的工作补一补,测试的薄弱环节还可以重新测一测,或者加入开发研究项目,为下一步打好基础,也可以研究一下项目的使用者的有关学科知识.
BigStonesAndXin BigStones 发布于2008-12-22 21:56:46
可以根据下一个项目开展培训什么的。
Aaron的测试生活小说 UniqueStudioWCD 发布于2008-12-23 13:47:08
题目是“当项目出现空闲时候,如何开展测试工作”,但笔者想,我们更关心的可能是项目组中的测试人员没事干的时候我们该干些什么事情。

     首先需要划分一下,为什么没事干:
     情况一:项目进入尾声,尤其是项目已经提交了,但是还需要后期维护工作。在这种情况下,开发人员已经撤的差不多了,很多公司就用一个测试人员做维护人员来打扫战场,其他的测试人员这个时侯就没事干了,可以放假了:)留下的维护人员有时候也会遇到时间真空的情况,也放假了:)

     情况二:项目开发速度赶不上测试速度。这一种情况出现的原因可能是因为公司希望按照正规流程来走,即在项目之初就加入了测试,并且是整个测试Team。这个时候由于是项目初期,需求还不稳定甚至还正在定义中,开发人员万事开头难,进度缓慢,而测试人员这边所谓的测试计划和测试培训则草草收场了,测试人员再次遇到了测试时间真空;

    情况三:测试人员等着开发人员模块的完成。其实现在很多测试人员的工作是黑盒测试,尤其是手工功能测试,而这也是大多数公司在测试Team成立之初所做的事情。这就导致了在开发人员的某一个模块还没有出来之前,测试人员无事可做,因为开发帮不上忙,单元测试也帮不上忙,测试计划和方案也早已经拟好了,测试人员又开始无事可做了。

    情况四:测试新手。(这里并没有贬损测试新手的意思,毕竟我也是这样慢慢摸索过来的,而且我现在的能力也仅仅算得上入门级而已。)为什么说测试新手会导致测试人员闲着呢,能力和经验问题。开发人员花了很大的力气写了一个模块,拿给一个新手来测试,新手按照自己学到的东西和已有的少许经验,写了几个用例就觉得写不下去了,然后自然而然用例少,测试工作量小了很多,测试人员自然也就闲下来了。

     对于这种种情况,我们应该怎么办呢?
     说一句废话,解决“闲着没事干”的最好办法就是“没事找事干”。初看起来这句话好像是理所当然的,但笔者认为这仍然不够全面,因为有时候的问题的症结并不在于人本身。所谓对症下药才能药到病除:
     对于情况一和情况二,很明显这并不是人的问题,而是组织结构的问题。一般建议的模式是在项目的整个流程之中测试人员的数量是变动的,而不是把一个Test Team直接绑定到了某一个项目上就万事大吉,这样做造成了资源的浪费。在项目之初,最先加入项目组的是测试分析设计人员,很多时候就是测试负责人,然后随着项目的开发的工作的展开逐渐加入测试用例实施人员,到了项目末期,逐渐退出部分测试人员,测试负责人先退出转而进入另外一个新启动的项目,逐步进入另一个循环。

     对于情况三和情况四,这里面人的因素就很大了,所以这就要求合理分配测试人员。人员的合理分配在项目活动中显得尤为重要。大多数时候我们的第一感觉是最重要的项目分配最强的人,在有些时候这种第一印象其实是错误的。因为最重要的项目并不是所有的任务都是需要强人才可以摆平的,同样,在一个小项目中也需要一个经验相对丰富的人来主导工作的进行。测试新手也可以乘此机会快速提高自身的能力,以更好完成测试工作。还需要注意的是,测试人员技能的全面性,我们不提倡一个测试人员做到面面俱到,因为那样的结果经常是造就了一拨万金油,但是我们应该对于重要的测试方向有所涉猎,比如说我们也要学习编程相关的知识。

      当我们在工作过程中发现自己无事可干之时,我们首先要反思为什么会出现这种情况,可能是我上面提到的几种情形,也可能不是。解决这类问题的办法归纳起来,无非就是学会去避免这种情况,然后才是去解决打破这种局面。前面主要讲的是怎样避免,后面我们继续聊一下怎么打破这种局面。

      现在我们不再讨论为什么会遇到这种情况,而直接讨论怎么“打发时间”。
      方法一:学习。这是大家最容易想到的,是的,学习。当我们有时间,我们一定要抓紧时间学习,学习什么那就要看自己的兴趣和自己的薄弱环节,以及公司的需要了。所谓学海无涯,可见这是打发时间的好办法。但是需要提醒的是,有的老板似乎并不喜欢这种用老板的钱搞自己学习的员工,毕竟他们是希望你能直接创造价值并使价值最大化的。

     方法二:写文档。据我所知,很多中国公司并没有规范的或者统一的内部测试文档规范,因此建立一套规范对于公司来讲,是有利的,这样对于老板来讲,会更好交差,对于自己也可以借机整理一下自己思路。至于写什么文档,这就很多了,比如各种各样的测试文档模板,测试文档规范,测试管理规范等等。

     方法三:休假,乘机休息一下紧绷的脑神经。这是下下策,因为这样做可能让开发人员真的觉得测试人员就是一帮闲着没事干的闲人,本着团结群众的精神,我们还是应该慎选此策。

       楼主问题的答案,自然是仁者见仁,智者见智。以上为个人观点,仅供参考。

[ 本帖最后由 UniqueStudioWCD 于 2008-12-23 22:00 编辑 ]
佐伊的个人空间 佐伊 发布于2008-12-23 15:17:09
楼上的回答很周全,不错.
lanbiers发布于2008-12-24 11:13:50
如果项目已经结束处于等待下一项目的真空期那么应该选择再学习和对以前的测试经过及结果进行总结,如果能产生相关的技术文档则是最好。
如果处于项目进行中一个过度的真空期那么应该选择对已测模块的扩展测试或进行更加复杂和耗时的测试,或者针对未测模块进行分析,设计测试用例,尝试使用新技术进行测试准备工作。
yunxiz的个人空间 yunxiz 发布于2008-12-24 14:12:08
文档的完善,技术的充实

不可能没事做,看你自己想不想做而已
mispolvo发布于2008-12-24 15:50:17
测试工作步骤是否按流程做完呢

以下是一些需要考虑的步骤:

1 得到需求、功能设计、内部设计说书和其他必要的文档

2 得到预算和进度要求

3 确定与项目有关的人员和他们的责任、对报告的要求、所需的标准和过程 ( 例如发行过程、变更过程、等等 )

4 确定应用软件的高风险范围,建立优先级、确定测试所涉及的范围和限制

5 确定测试的步骤和方法 ── 部件、集成、功能、系统、负载、可用性等各种测试

6 确定对测试环境的要求 ( 硬件、软件、通信等 )

7 确定所需的测试用具 (testware) ,包括记录 / 回放工具、覆盖分析、测试跟踪、问题 / 错误跟踪、等等

8 确定对测试的输入数据的要求

9 分配任务和任务负责人,以及所需的劳动力

10 设立大致的时间表、期限、和里程碑

11 确定输入环境的类别、边界值分析、错误类别

12 准备测试计划文件和对计划进行必要的回顾

13 准备白盒测试案例

14 对测试案例进行必要的回顾 / 调查 / 计划

15 准备测试环境和测试用具,得到必需的用户手册 / 参考文件 / 结构指南 / 安装指南,建立测试跟踪过程,建立日志和档案、建立或得到测试输入数据

16 得到并安装软件版本

17 进行测试

18 评估和报告结果

19 跟踪问题 / 错误,并解决它

20 如果有必要,重新进行测试

21 在整个生命周期里维护和修改测试计划、测试案例、测试环境、和测试用具
mispolvo发布于2008-12-24 15:52:21
以上是一些参考
当然测试最后还要多细心检查

[ 本帖最后由 mispolvo 于 2008-12-24 15:54 编辑 ]
单尾鱼发布于2008-12-24 16:01:53
1要测的软件用熟,深入的熟悉这个软件的功能,了解各系统之间的相互关系很重要。
2要学习,网上有很多资源,就看你是每天说着不会,然后去耍,还是,找到不会的学会它!
如果精力充沛,要潜心钻研测试理论、方法和技术,不断摸索不断学习吧!
mispolvo发布于2008-12-24 22:31:55

QUOTE:

原帖由 单尾鱼 于 2008-12-24 16:01 发表
1要测的软件用熟,深入的熟悉这个软件的功能,了解各系统之间的相互关系很重要。
2要学习,网上有很多资源,就看你是每天说着不会,然后去耍,还是,找到不会的学会它!
如果精力充沛,要潜心钻研测试理论、方法和 ...
这位说的不错,呵呵!
゛無磿頭.㊣ Sayid 发布于2008-12-25 09:45:01
项目空闲了无非就是自我深造,我想没有哪个老板喜欢看到一个无所事是的人成天上网聊天之类的吧。

如果不懂得自我学习,那么对自己对公司都得不到提升,原地踏步....走!
chengxq的个人空间 chengxq 发布于2008-12-25 09:46:20
测试组如果空闲的时候,说点个人的想法
首先,现在是不是真的空闲,其实我遇到过很多的项目测试组,都说自己很闲,没有事情干,但是,当真的查看工作的时候,还是能发现问题的,所以我们首先判断的是否真的空闲,如何判断,首先判断我们测试case是不是充足,我们公司采取的是先抽取测试观点,有测试观点对应测试case,这样我们从式样的功能点数,判断测试观点,从测试观点来判断测试case数,还有就是测试是否有遗漏等等,这些通过数据,或相关责任人判断
其次,如果我们真的空闲,那要考虑我们应该我们测试组的不足点,这里的不足可以是测试组过程管理上的,可以是技术上的,我们可以采取大家一起头脑风暴,看看相应的问题点,也可以采取问题触发式的,对于我们发现过程管理上的,我们应该制定相应的措施和策略来对应相应的问题,当然过程需要细化,对于技术上的,特别是项目组中存在很多的新人,老员工的数量不足的情况下,这些必要的培训是必须的,因为缺乏新人的培养,导致后期老员工的离职,会导致项目组的测试工作后面很难开展,当然如果需要新的测试技术,那需要大家的一起探讨学习,不过个人认为,现在测试上,技术上的问题,其实并不是很多,主要在我们的测试过程管理上
再次,对其次中采取的执行计划作好跟踪,要做好相应的控制措施,来保证执行的效果,以及相应的反馈
msnshow的个人空间 msnshow 发布于2008-12-25 13:24:58
学习中..........
zhangjm1688的个人空间 zhangjm1688 发布于2008-12-25 14:52:36
什么时候就做什么事情
记得我小的时候看我奶奶整天忙里忙外的,我就问:“奶奶,你怎么整天都有事做的。下雨天总该歇歇了吧?”我奶奶说:“天好有天好的活,雨天天有雨天的活。这不你看家里乱得了,也该收拾收拾了。”
9#的说的很有道理“不可能没事做,看你自己想不想做而已”。
项目空闲的时候,我们可以做以下的事情:
(1)整理测试用例文档。检查测试用例是不是跟最新的需求一致,如果不一致你就的更新了;检查文档上的测试用例有没有漏测;检查failed的测试用例,有没有反测。
(2)跟踪并分析缺陷。在测试的时候,由于时间紧,缺陷虽然是提交了,但并没有来得及好好的分析,所以我觉得空闲的时候可以把所有的缺陷导到表格中进行整理分析。通过对缺陷的分析,对于更好的测试很有帮助。
(3)全面了解所测的系统。当你参加的是一个大型项目时,你所测试的是系统的部分模块,对于你负责的模块比较熟悉,对于其他的模块就不清楚。这对于做系统测试是很不好,我们只有全面的了解了所测得系统,才能更好的做集成测试以及系统测试。所以,如果时间允许,可以多了解一些整个系统的需求。
(4)及时给自己充电。做项目很容易发现自己的不足,但是大部分公司是不可能给你一段时间学习的,所以有时间的话,赶紧把自己不会的地方学习学习。
(5)最后一点想说的是:如果只知道干活不知道疲劳的话,就不能称之为人了。如果你在前一段时间项目中,精力透支了,那么这段时间你就得抛开一切工作的事情,好好放松一下了。
zhaobinhs发布于2008-12-25 15:07:42
楼主提的问题就是我有时候遇到的问题
有时候想一想,自己没事做的时候应该干什么
个人的总结:
1.每天在上班进入工作状态前就安排好今天需要做的事情,这样可以节约不必要的思考时间
2.钻研以前测试中遇到但未解决或是不清楚的地方
3.在技术上和业务上对公司的产品进行深刻的了解
4.适当放松一下
恋上VS寂寞的个人空间 恋上VS寂寞 发布于2008-12-25 17:15:08
空闲就学开发
okle的个人空间 okle 发布于2008-12-25 20:13:44
○对于项目内的空闲
项目中出现的空闲,大部分会出现在3个时期:
1. 式样理解阶段
   需要加强对式样的理解。
   因为测试人员独立理解式样很有可能会漏掉个别细节,甚至有的测试人员都懒得仔细看设计书。
   可以采取式样讨论会的形式,大家坐在一起讨论式样,分别讲一下每个人对机能的理解,
   可以查缺补漏,还能提出一些疑问发给开发确认。
2. 两个测试阶段之间
   可以组织测试人员分析各机能的bug,找到软件缺陷的趋势,制定下一个阶段的测试方针和目标。
   追加设计一些测试用例。
   维护测试环境,制作一些测试的数据。这样在测试开始的时候可以节约时间,提高效率。
   如果有自动化测试,可以先制作一部分回归测试的脚本。比如说把已经发生的bug转换成测试脚本。
3. 测试末期
   这个时候能做的就是确认bug和随机测试。随机测试是测试过程中不可分割的重要部分,万万不可忽略。


○对于项目间的空闲
个人认为可以划为两方面。
首先,对前一个项目进行总结。
这个不是项目结束时的总结报告,而是我们为了在下一个项目方方面面进行提高而进行的总结。
可以从几个角度来考虑:测试流程(要配合QA进行),工作方式(包括汇报,交流的方法等),
分析项目表以外的bug(找到对策防止今后bug流出)等等。
当然不能搞成检讨会,因为并不是为了追究责任,而是找到今后可以改善的方面。这个活动要大家都参与进来。

其次,公司产品的研发很有计划的话,可以提前了解到下一个项目要用到的新技术。可以利用间歇期学习相关的技术。
比如说,我们会提前知道下个项目要用ECMA Script,或是要用Streaming测试环境,都可以提前学习。
如果我们不知道下个项目要用什么,我记得以前在51testing看过一篇文章,说一个合格的测试工程师应该掌握的技术。
包括:懂得测试流程,会一门开发语言,懂数据库,掌握测试工具,会进行性能测试,懂得文档的制作等等。。
想要把这些东西都学会,是需要着实下一番功夫的。
这样一来,不怕间歇期没事做,就怕间歇期不够时间来做这些事。
把和自己项目相关的技术都学到手,才能真正走到天涯都不怕。

一些浅显的见解,还望高手指点。。

[ 本帖最后由 okle 于 2008-12-25 21:06 编辑 ]
qq1122ww发布于2008-12-26 10:20:11
同步进行
从一开始测试和开发就一起的话,就不会出现空档期
我来说两句

(可选)

Open Toolbar