需求频繁变更的情况下,如何做测试

上一篇 / 下一篇  2007-01-14 18:03:39

    现在的很多公司,做起项目来,需求变化速度之快,实在是让人防不胜防。而且基本上对SRS的修改,都是先斩后奏。开发人员一般都是直接和客户交流,直接改代码。更过分的是,他们改完之后,从来就不会第一时间通知需求组,通知测试组。感觉就像整个项目组都应该围着他转一样。

    这里我不想讨论需求为什么变化那么快,为什么会允许这样随意地变更。因为许多公司的现状就是如此,让他们形成配置管理的意识,不是一天两天能解决的事。或者有些企业,虽然知道配置管理的重要性,但是真正到了要落实的时候,就把原本订的配置管理流程束之高阁了。

    在需求变化频繁的情况下,作为测试人员,最重要的就是要搞清楚以下几点:

    1.哪些需求发生了变化

    2.这些需求变化后,对测试工作会产生哪些影响。包括会不会影响测试用例,如果影响,会对哪些用例产生影响。当发生较大改动时,还要明确是不是影响到了测试方案,甚至是测试计划?

    3.明确这些变化,会对自己的工作进度产生多大的影响。当发现自己的大部分用例都受到影响,需要修改时,应该第一时间向上级反映情况。由他定夺解决方案,而不是自作主张,或是一声不响。

    关于如何确定哪些需求发生了变化,最好的工具当然是需求跟踪矩阵了。需求跟踪矩阵是从开发和测试两条线,同时进行跟踪的。但是,要实现需求跟踪矩阵,可不是容易的事情。尤其对于需求变化频繁的公司来说,基本可以断定他们是没有配置管理的。那么需求跟踪矩阵就根本没有实现的可能。但是,公司没有,不代表我们自己没有。

    公司的测试任务分配,一般都是按照子系统或者是模块来分的。比如TesterA测试子系统A,TesterB测试子系统B。那么这时,我们完全可以只针对自己测试的子系统,完成需求跟踪矩阵。我们只需要自己维护测试线的需求跟踪,至于开发线,那可是管不着了。但是这里还是有点问题。我们一般理解的需求跟踪矩阵,是将SRS分成子SRS,然后针对每个子SRS,建立跟踪关系。但是忽略了各个子SRS之间的关联关系。要想把各个子SRS划分得没有一点联系,那是不太可能得。如果有两个子SRS,称为SRS1和SRS2,你测试的是SRS1相关模块,而SRS2相关模块是别人测的。当SRS1相关开发人员告诉你需求已变更后,你分析后得知影响到了SRS2,那么你必须和测试SRS2相关模块的测试人员及时沟通。你能保证做到这点,但是对方未必会在SRS2发生变化时,及时通知你SRS1受影响的部分。这时你需要事先和测试组的其他人员充分沟通,让他们及时通知可能会影响到你的变更。如果他们不及时通知,你就完全有推卸责任的理由了。对于开发人员也是一样,他们擅自改了程序,不通知变更SRS,或者不及时通知变更,你也完全有理由推卸责任了。

    我们的目标肯定是要把测试工作做好,而不是自己没有责任就好了。当建立了自己的需求跟踪矩阵以后,就可以快速定位变更部分,而且目前企业没有配置管理的理念,所以可以及时变更你的用例,方案,甚至是计划。当发现受变更影响的部分非常多时,应该及时通知上级,让他们了解情况,并做出决策。

    总结一下的:需求变化快,测试工作需要重新写用例,方案,甚至计划。这时遇到问题:

    1.得不到及时通知

      解决方案:没有办法,只能事先和开发人员以及测试组内部人员事前声明,不及时通知的部分,一概不付责任

    2.不知道需求变化后,对哪些工作产生了影响

      解决方案:公司没有配置管理,没有需求跟踪,那么就建立自己的小的需求跟踪。只跟踪测试线。把自己的工作做好,并及时通知其他受影响的测试人员。

    3.发现自己大部分用例,方案,甚至计划要重新修改,而没有充足时间

     解决方案:及时通知上级,让他给解决方案,而不是自己苦干。


TAG:

阳阳小窝 引用 删除 ccc11yyy   /   2007-02-01 09:00:26
对于这段话有同感。" 2、微软的测试就是分成2个大的阶段的:当需求不稳定时,测试目的是尽量发现大的bug,帮助需求尽快稳定下来;等需求稳定了之后,再进行充分的测试。"
在需求变更频繁的时候,可以先进行使需求先稳定下来的测试,然后再进行充分的测试。对于已经稳定的部分也可以延后再做充分测试,先保证主要的功能可用即可。做之前先跟测试经理、项目经理分析清楚利弊即可,一般都会同意的(我的经验)。这样可以给测试争取更多的时间,来进行充分的测试,也避免了压力带来的负面效应和返工(需求变更后重测)造成的浪费。
引用 删除 不开窍的大饼   /   2007-01-28 21:31:50
还没工作经历过

先学学思路

谢谢阿:)
引用 删除 笨笨熊   /   2007-01-18 19:08:52
楼主说的真好,有时我们为了公司对于测试重视度不够而导致项目改变上的忽视而恼怒,其实想想愤怒先放到一边,最重要的还是想到解决问题的方法。

楼主这句话说的很对“公司没有,不代表我们自己没有”,对于测试新手来说,除了运用需求跟踪矩阵来规范自己的测试工作以外,还不要一味的追求太过正规的形式,这样反而会让自己更累,只要能做到够用、有效就好
tails82的个人空间 引用 删除 tails82   /   2007-01-17 21:19:01
测试经理安排任务不合理,那是常有的事情。任务安排是一项高要求的工作。对计划的制定者,不仅要求是个技术专家,更要有丰富的项目经验。但是这样的人,还是比较少的。尤其在测试行业。
  项目经历也许对测试的了解也比较有限,往往认为测试应该比开发来得快。我们要做的,就是反映客观事实。我觉得没什么不好说的,只要你有能证明客观事实的数据,那么完全可以和测试经理或者项目经理谈一下。
  下面给出一些参考数据:
  1.平均每条用例的执行时间
  2.每提交一个缺陷所要花费的时间
  3.每个版本需要直径的用例数量
  4.由于开发提交版本的延误,造成了你多少等待时间
  5.由于需求的变化,造成了你多少个用例需要修改。
  总之,一切你觉得会消耗你时间的因素都可以列出来。数据一定要是具体的,是多少就是多少,而不是“很多”,“大部分”。
  这样虽然会耗费点精力,但是客观事实的说服力,还是很吸引人的。
梦的边缘 引用 删除 anny_lv   /   2007-01-17 09:04:35
3.发现自己大部分用例,方案,甚至计划要重新修改,而没有充足时间
解决方案:及时通知上级,让他给解决方案,而不是自己苦干。
这个让我真不好说,本来是我经理的事情,她不做,推到我跟另一个测试这,还让我们把所有的版本都测试完,两天下来我们只测试了一个版本,还没结束.可是我们的经理永远是你们这个星期要完成,还不是自己跟我们说,托开发经理跟我们说,NND(发泄一下)这样的领导只要她不担责任就好,不管其他人的死活!汗~~~~~
梦的边缘 引用 删除 anny_lv   /   2007-01-17 09:00:05
学习一下,正为不断变化的需求而十分苦恼!
七彩云 引用 删除 qi_cy   /   2007-01-16 21:58:37
不错不错 学习一下了:)
引用 删除 不开窍的大饼   /   2007-01-16 00:17:12
哦 老师也来了 更好! 哈哈
一起出来测上帝 引用 删除 skinapi   /   2007-01-14 23:30:56
1、不管需求如何频繁变更,需要把握的一个原则的是:稳定的部分充分测试,不稳定的部分只进行功能验证,也就是说以不变应万变。
2、微软的测试就是分成2个大的阶段的:当需求不稳定时,测试目的是尽量发现大的bug,帮助需求尽快稳定下来;等需求稳定了之后,再进行充分的测试。
3、测试不能像折返跑一样,跑上去退下来的,那样会累死的,还是要以我为主,而不是跟着开发走,是什么情况就采用什么策略。
 

评分:0

我来说两句

日历

« 2024-04-19  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 6809
  • 日志数: 8
  • 建立时间: 2007-01-13
  • 更新时间: 2007-12-07

RSS订阅

Open Toolbar