现在的位置: 首页 > 综合 > 正文

世界杯-足球-软件测试

2013年09月24日 ⁄ 综合 ⁄ 共 2224字 ⁄ 字号 评论关闭

足球为什么好看

除了运动员有一个可以自由驰骋的绿茵场地、进攻的方式(长距离劲射、角球、点球、头球、倒勾)比较多等因素之外,更重要的是胜负存在太多的变数啊!

在一场比赛中,进一个球非常不容易(画外音:对于中国队,2002年世界杯更是让大家伤透心,理解非常深刻)。实力很强的队不一定能保证赢,也可能会阴沟翻船;看似弱的队,犹如一匹黑马横冲直撞,连爆冷门。正是这种变数,无数次让球迷大喜大悲、大悲大喜,使进球球员欣喜若狂、失球守门员久跪不起,使无数下赌注的人输得惨兮兮 而这种变数对于教练、队长或球队,就是一种风险,要赢球,就是要控制好风险。 软件测试,就如同足球比赛,存在无数的变数,也渗透了风险管理的艺术。

 

  1. 软件测试计划要确定测试目标、做好测试需求分析、写好测试计划,更重要的是做好各种风险预防,开发人员用什么样的设计模式和算法?哪些是重点测试,哪些是一般测试范围,哪些可以不测,如果发现Bug少下一步怎么测?如果发现一大堆Bug,下一步又如何测?如何预测缺陷的发展趋势?如同足球赛前的分析,进行各种猜测,对方可能会用什么阵型,433, 442, 4312, …? 哪个前锋是我们紧盯的对象?领先了怎么打?落后了怎么打?如何预测场上局势的变化?
  2. 我们前面谈到测试执行阶段可以划分为两个子阶段,前一个阶段就是往前冲,目的非常清楚,就是发现缺陷;后一阶段,目的也很明确,减少风险,增加测试的覆盖度。即在软件测试中,要追求效率,同时要降低风险,更重要是平衡。在足球比赛中,前锋目标也很清楚,就是进球,后卫要做好防守而不失球,实际就是风险控制,更重要是做到攻守平衡。

  3. 测试执行阶段就是发现缺陷,如果将缺陷都发现出来,风险自然降低了。在足球上,也强调最好的防守是进攻。足球的进攻,也更多获得球迷的喜爱,测试中发现缺陷也很有成就感,比做回归测试更有趣。

  4. 软件测试经理,有时如同足球教练,看到自己的策略没有得到贯彻,站在场外,无可奈何因为测试过程没有被组长控制好,如同足球队长没有控制好进攻的节奏;足球队员发挥不好,队长也没办法,有些队员是大牌球星,身价远远超过队长。更何况,世界杯结束,大家各自奔走东西,回自己俱乐部踢球,你又能怎样?测试员发挥不好,测试组长也难控制,IT跳槽也是频繁,测试经理有时还要十分小心呵护我们的工程师,也怕他们一走了之……

  5. 软件测试,如果最后不认真,往往漏掉几个严重的缺陷而将产品发布出去,后果不堪设想,如同日本队和澳大利亚比赛,10领先,一不小心,在8分钟内连丢三球,哭的没眼泪

  6. 程序代码质量好,发现缺陷不容易,如同碰上足球强队,进一球非常不容易;程序代码质量差,发现缺陷也容易,如同碰上象中国足球队这样菜鸟,可能灌进十来个。
  7. 测试顺利时,如同西班牙乌克兰,最后进的一球,和谐、流畅、一气呵成,非常漂亮。测试不顺利时,如同哥斯达黎加瓜多尔,绝妙的好球打到门框上,就是不进球,…..
  8. 有经验的球队,首先对如何踢这场球以及每个球员在其中所承担的角色取得共识。足球赛是真正的一个团队工作,巴西球队中的大牌球星无数,但不是人们想象那样可怕,而厄瓜多尔没有大牌球星,两场球赛大捷,不失一球,完全来自于优秀的团队配合。如果一支球队不懂的配合,疲于奔命,却不容易赢得比赛。在测试中同样需要明确的分工又需要默契的配合,测试也是真正的一个团队的工作,任何一个人的失误,会造成前功尽弃。高质量的产品,来自于每个测试人员的兢兢业业。

  9. 足球需要紧凑有效的进攻线路,而讨厌拖泥带水的进攻线路,犹如软件测试用例的设计,一定是对程序路径、条件、数据边界等了如指掌,设计出有效、简短的步骤,而不是漫无目的、列出一大堆的操作步骤去碰运气。

  10. 足球的远距离劲射、冷不丁的射门,相当于软件的例外测试(exception test,测试系统的容错能力

  11. 在对方门前狂轰乱炸,犹如软件测试中的强度测试,测试系统的反应能力,有没有性能瓶颈

  12. 足球的倒勾,一般出于灵机一动,可以说是软件的ad-hoc测试

  13. 定位球中角球、任意球,可是我们软件的白盒测试啊!成功率很高。

  14. 点球,软件的白盒测试高手,一出手就知有没有,基本能做到百发百中。

 欢迎补充

  From Chris.

1) 战术体系VS测试策略, 世界杯中, 好的有出色表现的球队无不时刻体现战术体系, 没有良好的战术素养和体系是很难成功的, 这是非洲球队很难在世界杯上有质的突破的根本原因 (从未进入前4), 针对不同的对手,不同打发而制定不同的战术体系很重要, 如同测试一样,要根据不同的产品,不同release特征而制定针对性的测试策略,才能有的放矢.单一的战术会带来低效,被对手吃透等一系列的恶果,而过于频繁的变化又不利于打法的稳定和队员的磨合. 所以先进的战术体系应该是以本身的特点为主, 参考和学习不同对手进行不同的攻防体系衍变, 他山之石,可以攻玉, 固本求变, 在测试中, 我们应该针对产品特征和类型制定基本的测试策略, 根据不同的测试产品着重制定测试过程和方法.

 

2) 及时吸取教训,总结经验: 加纳在本届世界杯中第一场比赛打得很好,但最终输球了,最重要的原因是不能在比赛中时刻保持注意力集中,然而在第二场比赛中及时的吸取了教训,并针对犯错的位置进行了人员调整, 结果取得非常好的结果. 测试也是一样, 遗漏bug和出EP (Emergency Patch)固然很严重, 但及时的总结,以及避免将来重犯错误同样至关重要. 这也是我们做好bug分析的重要原因,以此来调整我们的策略或者是方法.

抱歉!评论已关闭.