敏捷测试中理想的测试组织(2)

发表于:2013-07-12来源:IBM作者:李欢 标签:敏捷测试
BAT/Regression(负责人:初级测试工程师) 估计没人会反对我们在项目里要最大限度地利用 自动化测试 来开展 BAT 和 regression 测试,这是由 自动化测试 的特点

  BAT/Regression(负责人:初级测试工程师)

  估计没人会反对我们在项目里要最大限度地利用自动化测试来开展 BAT 和 regression 测试,这是由自动化测试的特点和对 ROI 的考虑来决定的。敏捷测试中不可避免地要用到自动化测试,不然一切敏捷都是扯蛋了。而要想提高自动化测试的复用率和降低维护的难度,我们最好能够考虑根据业务更多地使用测试框架,将业务逻辑、测试数据和测试脚本高度解耦,例如使用关键字 + 数据驱动的混合型框架。这里实际上为什么说 BAT 和 regression 只需要没什么测试经验的人去做呢?实际上前提条件就是我们要合理利用框架,像关键字框架等等,用这些框架的人不需要去学习编程,他们只需要能够利用已有的关键字根据测试的需要去组合测试用例即可。所以并不是每个做自动化测试的人都必须具备编程能力的,他们在没有太多测试经验的情况下,做探索性测试是不合适的,但他们可以利用这些关键字练习和设计测试用例,又可以帮助组织执行自动化测试,充分发挥他们应该有的价值,同时自身也可以得到提高。

  回页首

  Test framework development(负责人:自动化测试开发工程师)

  测试框架的应用在敏捷测试中也是举足轻重的,因为它涉及到自动化测试的复用性和可维护性的问题。脚本的复用性低和维护性差往往成为很多组织自动化测试失败的根本原因。辛辛苦苦开发的测试脚本不能复用,一点小小的功能改动都涉及大批脚本的改动,是得不偿失。而不管是利用现成的测试框架,如 robot 或者是自己根据产品的需求开发的测试框架,其本身实际上都是一个完整的开发项目,所以需要负责框架开发的人非常熟悉软件设计方法和扎实的编程技能,这样的要求通常只有对技术狂热爱好的人才有可能达到。他们可能不需要太关心产品业务层面的东西,那不是他们关注的重点。他们需要的产品方面的知识往往可以从其他测试人员那里了解到,这就足够了,如需要开发哪些关键字,都可以由其他人告诉他们即可。他们应该关心地如何使得测试框架本身可以灵活适应产品需求的变化,如何提高框架的复用性。所以归根结底就是对编程和程序设计方面的要求较高,他们具备这些能力后,可以专门关注测试框架方面的工作,从而为 BAT 和 Regression 测试的工程师提供有力的帮助如图 2: 自动化测试周期图。

  图 2. 自动化测试周期图

图 2. 自动化测试周期图

  回页首

  总结

  当然,这只是在敏捷测试中一种较为理想的测试资源的组织安排模式。它的前提是我们现在有所有这样的一些人,那么我们就可以把他们安排到他们最擅长的测试类型中去。这样做的意义主要有以下两点:

  一、就是实现了我刚刚说的那个原则:让专业的人去做专业的事。这句话说起来简单,但如果我们无法理清敏捷测试中的各种测试类型,需要什么样的测试能力,我想这个原则是很难实现的。太多测试中一做自动化就要求所有的人都去学习编程,学习工具,对于没有这方面兴趣的人来说,这简直就是痛苦得要命的过程,何必呢?如果他擅长于测试理论,熟悉产品业务和需求,那就让他去做探索性测试,让他去分析 user-story 或者是系统测试。只要测试组织者或者团队建设者真正清楚了测试的需求,那我相信他就不会大而全地要求每个人都是每一方面的专家。

  二、招聘的时候可以更加有的放矢。我的组织中需要完成什么样的任务了,我就去招什么样的人 . 现在很多企业的招聘广告上都会写:要有自动化测试的经验,有编程经验,会脚本,精通测试理论等等。这样大而全的要求会带来什么样的后果?你对人家的要求多,那他必然要价就高,那企业白白浪费大把金钱去招了一些能力强但不适合的人进来,从而实际效率得不到提高,而且很可能招不到合适的人。测试团队里面缺的就是做探索性测试的人,为什么一定要他具备自动化测试的经验呢,为什么要他有编程能力呢?完全没必要。再比如我现在有几个经验比较丰富的测试工程师做探索性测试了,但 BAT 和 Regression 没多少人做,那我完全可以招没什么经验的实习生进来,又好用又不贵,何乐而不为呢?如果觉得要做一套测试框架,也没必要要求人家有很深的测试背景,懂得多高深的测试理论,只要开发功底扎实,那一定就符合需求了。

  参考资料

  学习

  访问 IBM developerWorks 中国网站 Rational 专区,获得关于 IBM Rational 软件交付平台(Rational Software Delivery Platform)产品的技术资源和最佳实践。

  订阅 IBM developerWorks 时事通讯,一份关于 developerWorks 指南、文章、下载、社区活动、网络广播和技术讲座的电子周刊。

  获得产品和技术

  下载更多免费的 IBM Rational 试用版软件,了解 IBM Rational 软件的最新特性。

  获取更多 IBM 试用版软件,并熟练掌握来自 DB2®、Lotus®、Tivoli®,以及 WebSphere® 的开发工具和中间件产品,用这些试用版软件开发您的下一个项目。这些试用版软件可以免费直接从 developerWorks 下载。

  讨论

  加入 developerWorks 中文社区,developerWorks 社区是一个面向全球 IT 专业人员,可以提供博客、书签、wiki、群组、联系、共享和协作等社区功能的专业社交网络社区。

原文转自:http://www.ibm.com/developerworks/cn/rational/r-cn-agiletestorganization/

评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)