大纲:
自动化测试的现状
自动化测试的发展
1、包含的领域
2、发展的思路
3、观点: 自动化测试是一种软件开发交付过程
自动化测试成败在于自动化项目的质量与可维护性
自动化测试不只是测试的自动化,应当是流程的自动化
自动化的难点:
1、极强的定制性使得引入自动化成为难事
2、预言性的需求设计使得自动化需求变化极快,同时要求开发周期越短越好
3、软件流程往往成为自动化道路中的拌脚石
我在自动化测试的计划
未来的自动化测试在哪里?
引用
rubywindy说前面的路: 软件行业算得上是高科技行业,“零成本”缔造了N多帝国公司的神话。 这也从侧面说明软件业还不够“成熟”,因为在“传统”的眼里,很难出现一家独大的局面。 在软件业中,自动化测试要算是一个很小的分支了。 然而软件测试往往花费了50%以上的项目周期,而自动化测试正像传统的自动化流水线工厂一样,试图解决这个关键问题。 |
我在这个领域不长时间,算上入手开始到现在,大概有1年半有余。一直有一种想分享一些想法的冲动,然而总是感觉时机不成熟,毕竟这个领域在中国是新兴的,而我也是一种新入门的感觉,然而,测试领域的混乱状态与最近越来越清晰的思想使得我也借Ruby大会后的时间梳理一下我的想法。
自动化测试包含的理念是什么?
看了许多51testing上的文章贴子,很多人对此不清楚,我想简单几句表达下我的观点。
为什么出现自动化测试? 因为手工测试效率低下,回归成本高昂,许多在前期应当控制的代码质量由于手工测试介入过晚导致测试成本过高。 自动化测试的出现要求提高整体测试效率,极大降低回归成本,通过单元自动化,接口自动化,自动化代码检视,编译自动化构建,冒烟构建等立体动态的方案从而可以尽早从测试手段控制版本开发质量,降低后续测试成本,并快速集成回归。
我想提供一个图看下变化过程:
这是一个传统的,也是我们一般人使用的软件开发模式,国外有个好听的名字: 瀑布开发模式(你坚着看,很形象吧?)
而自动化测试应当提供什么呢?
看下图:
我们今天不讨论敏捷,这里的自动化模式是基本不改变开发模式的方式下的开展过程。(我想大部分公司很难强推行大规模的开发模式转变:大部分原因被冠名风险与人)
这个图是以自动化云层(叫平台也行)依靠,提供全方面的自动化测试过程。
● 自动化测试的手段: 以自动化测试代码为依托,提高高可用的测试方案与立体的测试体系。
● 自动化测试的目的: 让软件测试无事可做!