谈谈自动化测试(二)

lotus_pavilion

前文讲到自动化测试的概念,今天我们来谈谈自动化测试的意义,也即为什么要做自动化测试。

通过观察业界的自动化测试实践,总结有大致这么几个点:

一 . 它可以缩短测试周期,提高效率
前两天听罗辑思维,讲到一个例子,有一位朋友的女儿刚刚学会说话,就接管了他的iPad,还没怎么学会走路,就可以用iPad里的App画画,并操作一些复杂的任务。有一天,朋友将一张打印出来的照片放在咖啡桌上。他注意到女儿走上前去,努力拖放照片想使它变大。她尝试了几次,都没有成功,然后困惑地看着他:“爸爸,坏了。”

人类已经养成了一种做一件事情能够得到反馈的习惯,并且这个趋势会继续下去,并且反馈速度越快越好。就像我们的工资能否变为按天来发或者按照每小时来发,这样人类的工作是否更加有干劲呢?

软件开发中的人们也希望写好代码快速得到反馈,越快越好,靠手工测试验证,反馈速度是无法接受的,一个转测试版本测试1周甚至2,3周,人们已经没有耐心了,能否有什么办法在1小时,5分钟,甚至秒级得到反馈,自动化测试是一种较好的解决办法,充分利用机器,集群替代人工,缩短测试周期,快速反馈结果。

二 . 避免人为出错 说到自动化测试,与之对应的就是手工测试,所谓“人非圣贤,孰能无过”,传统的手工测试很大部分依赖于人,简单概括起来出错的可能性会有:

  • 用例执行方法出错
  • 输入数据出错
  • 用例执行步骤出错
  • 测试报告数据出错
  • 忘了执行某些用例
  • 忘了设置预置条件
  • 错误的理解被测系统的行为

通过实现自动化,可以避免出现这些错误,同时人类可以把精力投入到更有个价值的工作中。

三. 测试信息存储 自动化测试主要通过自动化脚本实现,和传统的手工用例相比,脚本中可以记录测试点,测试拓扑图,测试设计思路等信息,是非常理想的测试信息存储处,即“脚本体现思路”。

同时带来的好处是新人接收测试时,可以快速掌握已测试点,因为可以通过运行了解测试。进而如果对待测试用例像对待代码一样,做好版本管理,将达到测试可回溯的目的。

四. 轻易获取覆盖率 在较好的自动化框架下,测试执行完自动化脚本,可以轻易的获取到代码覆盖率,进而根据覆盖情况分析,进行测试用例补充。

五. 其他 比如:自动生成清晰的测试报告,定时执行测试套,数据驱动测试的测试套重用等。

最后, 自动化测试增强软件人员的幸福愉悦感。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    Mr希灵阅读 22,150评论 7 278
  • 1.测试与软件模型 软件开发生命周期模型指的是软件开发全过程、活动和任务的结构性框架。软件项目的开发包括:需求、设...
    宇文臭臭阅读 11,685评论 5 100
  • 文章来自:http://blog.csdn.net/mj813/article/details/52451355 ...
    好大一只鹏阅读 13,006评论 2 126
  • 1.问:你在测试中发现了一个 bug ,但是开发经理认为这不是一个 bug ,你应该怎样解决。 首先,将问题提...
    qianyewhy阅读 13,042评论 4 123
  • 变量(variable)是任何一门语言的构成基础, 对 Swift 也不例外. 大家可能会想, 这东西还有什么"细...
    铜锣烧的梦想阅读 5,887评论 10 18