前 言(Monkey版)
距《大话移动APP测试》出版已经过去两年了,我也收到了很多朋友的支持和吐槽,无论好坏你们都是我最大的动力,在这里要给所有人说声谢谢。
在这一年多的时间内实在发生了太多的事情,可以说轰轰烈烈,也许什么时候能够将这些作为一个一个的故事说给大家听,相信每个人都能够看到很多,想到很多,体会到很多。在这一年多内,也有很多朋友知道了我,但却不了解我,其实不了解我没有关系,我这里引用诺兰的《蝙蝠侠黑暗骑士三部曲》中我很喜欢的一句话来说明。
It''s not who I am underneath but what I do that defines me.
在这一年多的时间里,测试行业也发生了很大变化,越来越多的人开始接触移动互联网,越来越多的人发现也许测试已经不是当初想的那么容易的一份工作了,也有越来越多的人开始从事副业或转行。当然,无论你属于哪一种,生活和工作都要继续,我们都要面对这一切的变化。我可以得出这样一个结论:测试行业并没有在进步,而是在进化,但仅仅是属于符合中国国情的进化。
这一年多相信大家感触都很深,我在前言里帮大家总结下。
1)测试一定要会代码。前几年讨论的问题终于不用再花费口舌去讨论了,事实印证了测试要写代码这个事实。所以现在对在知乎上问我问题的人,我也终于可以很有底气地说:先学会代码,再来学做测试。
2)行业要求越来越高。当然,我不想听到我的圈子不是这样的,我看到的不是这样的这种话,我不关心,因为我可以很有信心地说我接触的圈子肯定比你们大,那么,我看到的肯定是所谓的大方向和趋势,所以请各位读者静下心来看下去。进入这个行业的门槛依然没有变高,但要往上爬以及进入一家不错的公司中拥有不错业务的部门,在这一年多里变得异常困难。(再三强调下,看到BAT就觉得是好公司的人不在我讨论范围内,哦对了,我在BAT里做着日活不过万的项目,你觉得是不是不错呢?)是的,在这样一个飞速发展的行业,讨论要会什么已经不再那么重要了,重要的是多久能够学会一项新技术并落地,这才是我们关心的。3)技术栈太多,眼花缭乱。很多测试人员看到移动APP的UI自动化框架就已经傻眼了,更不要谈接口、单元、专项、安全、大数据等。测试所接触到的技术栈、工具栈的扩展如火山爆发一样一发不可收拾。很多测试会混乱,到底学什么呢?答案上面已给出。很多测试觉得这只不过是一种过渡阶段,不久的将来肯定会出现一种稳定的兼容性很高的工具,比如以前的QTP和LR,首先我不说有多少人真正用过正版软件了,从短期来讲,将来测试行业肯定会越来越成熟,肯定会统一很多技术和工具。但长期来讲,现在这种变化、这种痛以后会越来越频繁,因为这是宇宙规律,这是发展和进步的需要。所以从长远来看仅仅追求工具永远都是远远落后于行业的,同时被替代性也是最高的。4)从测试到质量的变化。这点在正文中会有详细的说明。这几年的大会,与大家交流的确发现如今很多测试已经开始跳出测试,真正开始关注质量。(当然,如果看到这本书的你觉得没有进入状态,请多多看TesterHome或者加我微信进行交流,你就明白了)当测试只关注测试时,大家的关注点在于以下几点:(1)测试是不是比开发轻松。(2)测试能赚多少钱。(3)测试到底用什么工具。(4)测试到底用什么框架。(5)测试都看什么书。(6)其他公司里测试都怎么做的。(7)UI自动化到底做得怎么样。放眼整个项目,如果只关注测试,关注点真的实在太窄,同时也会阻碍我们进入更高的高度。所以大家更多地开始关注质量,质量在项目中无处不在,可以说贯穿了整个项目,相比于测试,质量的关注点会很不同,比如:(1)工程效率,项目流程。(2)代码规范,文档传承。(3)应用架构,耦合性怎么样。(4)各种线上线下,实时或者T+1的监控机制。(5)Hotfix机制。(6)打包、持续集成、汇报bug等工具平台。
其实这样一来就能一目了然地明白测试其实在质量面前是一个很小很小的点。为什么要说那么多呢,因为几乎每天都会有人来问我公司测试怎么做的?公司持续集成怎么做的?公司测试开发比多少?公司用什么工具?,其实我每次面临这些问题都很尴尬。先不讨论这些人员会不会问问题吧,就算知道了用什么工具,什么框架,测试开发比多少就能够做出好测试了吗?就能提升产品质量了吗?明显不可能。在一个企业中要提升产品质量绝对是一件大家共同努力的事情,而不是一个测试人员或者一个测试团队就能够搞定的,如果不明白这点,即使你操着卖白粉的心,结果你卖的还是白菜啊。再来说《大话APP测试2.0》这本书,这本书并非是第一本书的加强版或者扩展版,可以说是一本全新的书。我对第一本书的定义和感觉可能和所有人都不同。现在回过头去看当初的自己,我觉得自己的确够狂,够年轻气盛,竟然在当初那种一知半解的情况下就有勇气出书。但我依然认同我当初的一个观点《大话APP测试2.0》这本书可能因为我当初才疏学浅导致技术层面的高度不高,但对于测试的理解,对于行业的认识,对于测试的态度这点上我是永远不变的,所以我认为只有当整个国内的测试行业真正步入正轨,大家真正都愿意去好好学习测试,好好重视测试的时候,本书才会真正发挥它的价值,一种精神上的价值。我并不是什么圣人,但是我认为人活着就应该有价值,这种价值自我认可就可以了。人一生就那么多的时间,每个人都很公平,那为什么我们不用这些时间尽可能地去挑战自己的极限呢?去发挥更大的光热呢?去影响更多的人呢?否则多没有意思啊。之前看过一部电影《绝命海拔》,这是由真实的故事改编而来,很推荐大家去看,无论生死如果都是为了去追求自己所爱、自己的极限,那么这一切就是值得的。我在第一本书中也说过,书这种形态的东西,尤其是技术书,让你看到它的时候,其中内容肯定已经落后1~2年了,希望大家明白这个道理。写书是一个非常累的活儿,是一件挑战自己毅力的事情,需要去记录很多的案例以及当时的感受。所以希望大家不要太过苛刻,抱着空杯心态来看书最好。行业中无一本技术书的写作风格与我的相似,也没有任何一本测试书比我所记载的更落地。这并不是骄傲,而是自信和自豪,我愿意100%地分享。通过这本书大家可以明显感觉从《大话移动APP测试》出版至今这一年多的时间内我到底成长了多少,我到底进步了多少,我又到底改变了多少。毫不夸张地说,这本书将会让整个行业上升一个层面。那些抱怨《大话移动APP测试1.0》对自己技术没有帮助的读者,我在这里也向你们致歉,这本书算是对你们的弥补。同时也希望不要抱有太大的期望,毕竟书这个东西落后很多,不过你们可以随时微信和我交流。那让我们一起进入一场有技术、有故事、有吐槽的测试之旅吧。
前 言(恒温版)
亚马逊雨林一只蝴蝶偶尔振动翅膀,也许两周后就会引起美国得克萨斯州的一场龙卷风。2012年,Dan Cuellar编写了Appium,他没有想过2016年的今天,Appium已经成为移动测试领域的一方霸主。这是软件测试技术的蝴蝶效应。
在2014年,我还在写WebDriver自动化,而今天我在写Appium自动化。在UI自动化这个领域,我跨了整整一个年代,成了传统互联网到移动互联网的见证者,相信所有身在其中的人都深有体会。Appium作为WebDriver的继承者和开拓者,目前看来是非常合格和称职的。
我接触Appium比较早,TesterHome上线不久,我们就引入了这个框架,进行布道并坚持到现在。可以自豪地说,目前来看,TesterHome是最专业的民间Appium论坛。当然民间还有很多高手,尤其是这两年,各种解决方案、衍生框架百花齐放,TesterHome作为这些内容的载体,也受益匪浅。
我一直想写一本有关Appium的书,其实也在TesterHome发起过众写项目,可惜因为各种原因未能成品。如今市场上已经有几本关于Appium的书,质量,所以这里不推荐任何书籍,学习Appium还是需要熟读官方文档和深读源码。
受Monkey邀请,我有幸在本书中写一章Appium,我没有想翻译文档,我只是把自己的理解写出来,和大家分享,希望大家喜欢。