• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

你为什么要做自动化测试

发布: 2011-2-14 09:48 | 作者: 不详 | 来源: 领测测试网采编 | 查看: 284次 | 进入软件测试论坛讨论

领测软件测试网

  你为什么要做自动化测试   软件测试

  不少介绍微软测试过程的文章都强调大量运用自动化测试,给人一个只要有了自动化测试,整个测试过程就得到保证的印象。不可否认自动化测试的作用,但是对于下面两个问题:

  “自动化测试总是任何时间内、任何条件下、任何项目阶段中的最佳选择吗?”

  “进行/不进行自动化测试的决策是怎样做出来的?”

  答案会是什么?

  为了回答这两个问题,我想分享一个真实的微软测试项目的经验。

  在这个项目中需要关注两件事情:设置向导和客户体验改进计划。

  设置向导,或者安装向导,相信安装过软件的朋友都知道,就是引导用户完成一系列操作的一种界面,具有连续出现的窗口,每个呈现不同的内容,使用户每次只关注特定的项目从而容易完成复杂的全部操作。

  客户体验改进计划(Customer Experience Improvement Program,简称CEIP)就不是那么为大众所了解。实际上Windows系统中有这么一个缺省关闭的选项,如果用户打开了,关于用户如何使用微软软件的信息,例如常点击的菜单项有哪些、缺省选项被改动为哪些值等等,会被Windows系统自动记录下来并定期发送到微软的服务器。专业分析师会解读这些数据,从中发现微软软件设计上的潜在缺陷:它们会导致用户迷惑、误解,以致无法正确使用某些功能。

  这里要测试的功能,就是为某处设置向导添加CEIP的记录动作。第一次接触这个新事物,不少测试工程师的通常反应是,模拟用户在设置向导中的操作,然后观察CEIP的记录数据对不对,完事。

  自动化测试更是小菜一碟:驱动用户界面操作本不是难事,何况测试设置向导本身功能的工程师已经做好了一切,借花献佛就好了;CEIP的记录数据也是拿已经做好的函数读一下记录,然后跟预期数据比较就好了。

  表面看是如此,但如果这就是故事的全部,那就没有说的必要了。实际上,这只是冰山浮在水面上的部分。

  先考虑一下两个问题:

  这个功能没测试好的后果是什么?

  CEIP是用于指导下个版本的可用性(Usability)设计的。如果里面的缺陷导致不准确的信息,那么CEIP分析师会被误导从而得出不反映真实情况的结论。例如,本来用户很常用的一个菜单项“打印”,被误记录为“属性”的话,结论会是“打印”没什么人去用,“属性”倒有不少用处。那么开发下个版本的软件时,根据这个“据说从真实的用户统计数据得来”的结论,很可能“属性”被放到显眼处,很常用的“打印”反而被藏起来了。不要争辩哦,这是被大量用户数据所证实的嘛。所以,CEIP是把双刃剑,不准确的数据比没有数据更糟糕。

  这个功能没在测试中发现的缺陷,会被谁、什么时候发现?

  很多测试中没发现的功能缺陷,发布出去之后用户迟早会发现。唯独这种CEIP的功能,用户除了打开或者关闭之外永远不会去接触:用户为什么要关心CEIP记录得对不对呢?事实上这些功能缺陷用户不知道,微软也不一定知道,只会根据CEIP数据调整设计。除非之后的若干个版本改得实在太过分以致怨声载道,或者跟用户调查的结论相差实在太大,才会惊觉可能是CEIP的问题。所以CEIP数据的缺陷,是一个不定延时引信地雷,埋下去就难以挖出来,而且要挖出来还极为麻烦:怎样回应用户“上几个版本都是这样的,我都习惯了为什么又要改”的质疑?“根据CEIP数据决定这样改,但后来我们发现CEIP数据错了”?(用户一脸茫然:什么是CEIP数据?跟我有什么关系?什么叫做记录我做过的事?你想说这是我自作自受的结果吗?)

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

21/212>

关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网