我教会了siri做自动化测试......

发表于:2020-4-07 11:34

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

 作者:乙醇    来源:测试圈TC

  2020年是一个魔幻的年份,那么在这一年里,我们不妨玩的更科幻一点。
  在下面这个视频里,我们看看怎么样使用siri帮我们做自动化测试吧。
  原理分析
  原理其实很简单。首先用语音唤醒siri,调用ios的快捷指令,自动给在公司的小伙伴打电话,让他们配合表演,做一阵各种操作,把测试结果返回。
  当然,这是开玩笑的。
  真正的原理如下图所示
  其实就是用语音唤醒siri之后调用ios的快捷操作app,通过ssh到远程服务器的方式,调用远程服务器上的测试脚本,运行用例,并将结果返回。
  用到的设备
  一台ios机器,iphone和ipad都可以,升级到最新版本
  一台云服务器,能ssh访问
  测试用例
  因为偷懒的关系,我就没有写特别复杂的用例了,这里我就用python简单测试了一下重定向科技的所有课程页面,属于简单的界面UI测试范畴。
  不过这里没有用到selenium,而是直接发送1个get请求拿到页面的html,然后从html标签中分离出我想要的关键信息做断言。
  先写自然语言的用例
  发GET请求到http://www.itest.info/courses
  拿到html后用css选择器.servive-block-in > h4拿到所有课程的名称
  课程名称里包含全栈测试开发班这个课程,这里用包含断言,提升了用例的鲁棒性,也就是说跑多次不容易报错
  再用python去实现一遍
  这里用到了2个第三方库
  requests:简化http的各种操作
  BeautifulSoup4: html parser,方便我们从html标签中分离出各种有效信息
  用例的整体思路借鉴了多年前google提出的测试降级思路,也就是如果页面上的一些元素可能是干扰项,那么就需要在用例中去掉这些干扰,实际上这个脚本其实就是一个简单的爬虫,只是加了断言而已。
  确保可以远程运行
  将脚本放到云服务器上,运行
 python itest.info.py
  配置快捷指令
  一步一步按图来配置就好了。
  这里我配置了
  通过ssh运行脚本,在这里选择ssh到了远程服务器,并执行了shell脚本
  播放声音,这个纯属为了好玩
  最后显示shell脚本结果,把运行的结果返回回来
  配置好快捷指令之后就可以用siri去运行这个指令了。
  最后
  用siri去执行自动化测试脚本,听上去感觉脑洞很大,但只要了解了原理,就会发现其实并不算困难。
  整个过程看上去很简单,但其实包含了一些值得分享的思路。
  能在命令行里跑的都在命令行里跑
  能在云服务器跑的都在云服务器上跑
  工作中其实有很多地方都可以用到自动化,主要看脑洞够不够大
  通过siri + 快捷操作的方式,你还可以实现
  通过siri去部署
  通过siri去运行爬虫
  通过siri去执行jenkins任务,ssh到一台跳板机,然后通过curl运行jenkins api
  其他更多....
  有兴趣的同学不妨亲自动手试一下,跑通了流程以后也许可以在面试的时候表演一下,比如假装收到告警短信,然后低调的语音唤醒siri,说跑一下现网的监控测试,然后就优雅的等待测试结果或翻车,总之,人生如戏,全靠演技。

       本文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号