推动开发做自动化的解决方案

发表于:2012-8-31 15:36

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:lyfi2003    来源:51Testing软件测试博客

  1、为什么推动开发做自动化?

  测试将自动化做起来不难,做出效果来不难,但只能做好与业务相关紧密的黑盒级自动化。

  黑盒自动化虽能带来很好的效益,但它的问题也随之而来,慢,开发成本高,环境依赖大,可覆盖面有限。不能给项目带来质的改变。

  开发做自动化,可以从代码上入手,从一开始就减少bug,其价值,就非常大。

  但是,推动开发好做么?如何去做?接下来,就这个问题我们来讨论一下。

  2、如何推动开发做自动化?

  首先,要弄明白一个事情,开发是什么样的人。

  1)聪明但懒惰的人。

  聪明不必说,我们测试同样十分聪明,不是么?呵呵,放松一下。懒是程序员的天生本性。君不见,K.I.S.S 是他们开发的基本原则。可能有些测试兄弟没听过,没关系,我解析下,将项目做的够简单,够愚蠢。这样,他们才能懒下去。没有任何重复,任何事情不应该干两次,这也是他们的准则。而且他们还美其名曰:“懒是人类进步的动力”,我吐槽,这群程序猿们有些意思嘛。。。

  他们宁可用着老掉牙的vim也不喜欢微软的大型IDE,宁可在命令行输入天书般的命令,也不愿做一个UI点一点,宁可用Linux这复杂至极的系统,整天用着 wget,linker,curl也不愿切换鼠标。

  那他才懒着用你提供的关键字驱动框架呢,一会用中文编程,一会切换到这门语言,一会切换到他的“母语”,一会切换在人家的IDE里,一会又用脚本,再写的过程出个错,错杀自己心爱的代码。谁受得鸟呢。不用了。

  2)何况,他们还是不多管任何事的人。

  君不知,不是他的事就不应该知道就是他们的信条,否则,便犯了软件界的大忌了。你想让他们做一些测试的事情?门都没有。

  还好,他们还是聪明人,知道bug本质上都是自己的过错,知道线上的问题自己承担至少一半的责任。知道自己应该测测再提交测试人员。知道最好可以自动化测测。。。

  说到这里,我有一个很久远的故事先分享下,古时候,有一个孩子,很懒很懒,懒到饭都要老妈喂到嘴边才肯吃,有一天,老妈要去婆婆家几天,于是,做了一张大饼,挂在儿子脖子,然而,儿子竟被饿死了。。

  还好,我们开发人员只需要喂喂就可以了,我的方法是,做一个足够简单,方便的“大饼”,给开发 “喂” 起来。则此事可成。

  那么,这个大饼应该是什么样呢?

  * 足够简单,让他一张“嘴” 就可以“吃”起来,所以最好只写业务代码就成了。

  * 美味,符合他的味口,所以最好可以使用他的母语进行自动化,符合K.I.S.S

  * 可扩展性好,想改变下口味也是可以的

  * 还要好看,实用。通知机制,失败分析,一个都不能少。

  如果,有如此一张“饼”,大事可成矣。但如何去做出这张大 “饼” 呢?这需要你的高深的厨艺了。且听接下来的分解。

  3、具体的做法

  我有两种方法

  第一种高端方法是采用深入敌方深处

  * 控制开发框架,掌握开发的框架,正所谓,知之知彼,百战不怠。

  * 通过某一次新产品需求,提出框架的可测试性需求,让产品经理或老板采纳。

  * 开始完成我们的大饼,一步步来,让开发看到进度,一旦成型,则可以无数开发使用。

  第一种难度大,我们需要成为他们的架构师才行的通。

  方法二

  * 参与前期需求,提出可测试性需求,并能够有效拥有开发的意识,

  * 跟他们开发经理谈谈,找出内部有兴趣做这个框架的”叛将“, 谈谈。

  * 让他负责做核心,你借机熟悉周边技术,比如,我们用Ruby,因为它的开发效率,我们可以学学 swing, thrift 这些 ”透明胶“,将他们的母语粘在一起,这样即拥有了高效的开发效益,又符合他的味口。

  * 形成框架,让少数人用起来,改进再改进,直到”大饼“ 成型。

  大饼的特点,我上面说到了,你一定要留心,缺一不可。

  那能做成么?有实例吗?你肯定会如此问,我可以信心十足的回答,有的。实际上,正是段念分享的一段话,在懒惰的开发面前,如何做成 Google Map 这样的自动化测试工作的。

  所以,我们团队很可能去落实了,你呢?

版权声明:本文出自 lyfi2003 的51Testing软件测试博客:http://www.51testing.com/?312752

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号