零基础APP自动化测试教程(三)

经过前面两篇文章的介绍,大家应该已经基本了解如何使用Appium了(纳尼,还不会?那么请多看多尝试)。
然而会使用Appium只是我们UI自动化的开始,相当于武术中的基本拳脚功夫,听上去是不是有点打击士气,可别急,本篇文章会带你更上一个台阶,了解拳脚功夫以外的“套路”。


如果你是自己去摸索APP的UI自动化测试,那么恭喜你,会分为以下几个阶段(不要问我为什么知道,因为它喵的我就是这样过来的):

  1. 纯小白期,纠结于如何使用某一工具去完成UI测试的基本操作,如点屏、滑屏、输入文本。在这一时期中,会去了解市面上已有的自动化工具,如UiAutomator、Appium。并可能去查看大量的教程或者源码了解这一工具。
  2. 熟练的小白期,在这一阶段,会感觉很兴奋很幸福,因为可以通过对基本操作的组合来完成一系列的自动化测试脚本了。比如零基础APP自动化测试教程(一)中的栗子——登录脚本的编写。然后,当你疯狂地撸着线性的脚本代码,随着脚本数量的增加,你会渐渐发现一个问题:它喵的,这节奏不对呀,比如感觉自己的脚本越来越难维护,可能修改一处很小的功能而需要大动干戈;又比如脚本是写死的,无法让其他人参与到编写及修改脚本的过程中来,只有自己傻傻的撸;更甚者自己撸好了的脚本只有自己能用,其他人完全无法用或不知道怎么用。
  3. 普通的思考期,因为上面的问题,你可能会被迫去寻找解决办法,从而去知道各种设计模式和驱动模型。比如,为了有效的组织脚本,我去尝试过PageObject模式(就算不用,也强烈建议去搜索了解下该模式),尝试去分层次的组织封装自己的代码,尝试数据驱动或关键字驱动。
  4. 深入的思考期,经过上一阶段的拓展,你会考虑如何更好地开展UI自动化测试工作,根据团队的现状设计出符合该现状的UI自动化框架,思考该框架给团队带来的实际效能,不要为了自动化而自动化。
  5. 打怪超神期,好吧,其实该阶段我并没有接触到(因为毕竟也才玩APP自动化一个多月,写这个系列也只是把实践的过程总结与拓展而已)。通过了解一些其他团队开展自动化的现状,还是能大致描述一下这个阶段能做什么。此阶段可以让程序在做UI自动化的基础上,去做一些测试人员本身手工测试所无法完成的任务,如自动操作APP的同时,记录下当时手机的性能,又如指定UI路径下的Monkey测试。更有甚者,可能会去实现测试方案的自学习工作,让程序动态调整UI测试的着重点。

吹了这么多,可能大家会觉得干货含量并不是特别足呀,当然这也明显不符合我的特点,没干货的文章和耍流氓有什么区别。所以,下面将带来满满的干货,如果你正处于上述过程中的第3阶段,以下内容可能会让你的目标更加明确。简而言之的告诉你,UI自动化框架开发需要注意的地方:

  1. 不要重复造轮子
    为什么要把这一条摆在最前面说呢,因为大家想想自动化的本质是什么?提高效率对吧,利用现有的轮子,将会使开发产出比得到提升,某种程度上来说,至少不会让你的自动化工作还没开始就因为各种技术因素或者时间原因而胎死腹中。
  2. 高度可重用性
    这里的高度可重用性不仅只代码模块间的高度可重用性,还可指测试行为的可重用性。比如,把一些常用的测试流程操作组合成某一个关键字去代表它们。
  3. 易维护性及易用性
    相信这两个词都很好理解,易维护性是方便开发者自己,不会因为一点小小的改动需求而烦恼,这里可以从好的代码封装和层次结构做起,此外还有老生常谈的编码规范和简单明了的注释;而易用性不言而喻,毕竟撸出来的框架是要面向其他用户的,难于上手的框架,会导致用户的不感冒,从而失去了存在的意义,这里可以在撸完框架后,顺带写个详细的说明文档,皆大欢喜。
  4. 漂亮的测试报告
    测试报告呈现的方式多种多样,如excel、word、pdf、html等。如果项目没有实际的硬性要求,我个人还是更加喜欢html的展示方式,关键还是易读性。报告中要包含执行测试的实际结果,有哪些用例成功或失败了,失败的原因又是什么。
  5. 详细的测试日志
    好框架在运行过程中是可以产生必要的日志的,这些日志会在用例执行失败后帮我们分析定位问题,从而节省我们的时间。当然日志的形式也不单单只是文字,还可以是各种截图。
  6. 执行效率
    这一点其实是后话了,在保证前面几点已实现后,我们会开始关注如何让我们的自动化测试执行效率更高,此时可能会去思考多线程或者分布式。

下一篇文章可能会给大家带来一个自己刚撸出来的框架,一个麻雀虽小五脏俱全的demo,敬请期待!



作者:Gavin吃西瓜
链接:http://www.jianshu.com/p/330d62bc6d0a
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值