<自动化测试方案_8>第八章、手机端UI自动化测试
第八章、手机端UI自动化测试
(一)APP测试分类
1,原生APP:Native页面是使用原生系统内核的,相当于直接在系统上操作
2,H5APP:先调用系统的浏览器内核,相当于是在网页中进行操作,较原生APP稳定性差
3,混合APP:既有Native页面,又有H5页面
特点:
H5:最大的优点是可以跨平台,开发容易
Native:需要用Android的语言、iOS的语言各自写自己代码。H5只要开发一套
(二)移动APP自动化测试框架对比
参考文章:https://blog.csdn.net/xiaoyida11/article/details/52875723
Android:
各个测试框架的继承关系如下,继承关系决定了有些框架的先天优势或先天不足. 在实际应用中可以集成多个框架。
l 基于Instrumentation的测试框架,比如Espresso,Robotium,Selendroid等,都不能支持跨APP使用。 如自动化测试中有跨APP操作,可以结合UiAutomator实现。
l 支持BDD的自动化框架比较少,可以在calabash 和 RoboSpock及Jbehave之间选择。
l 若想同时支持Android和IOS,可选框架有Appium和Calabash,或AthRun。
l 若为单元测试选择框架,可选Instrumentation或Robolectric。Robolectric实现了shadow object 类,耗时短。
iOS:
IOS自动化测试框架继承关系如下. XCTest与 Xcode 的 IDE 直接集成,使用简单, 但其不支持stub和mock, 所以单使用XCTest框架的较少. Kiwi是一个iOS平台十分好用的行为驱动开发BDD的测试框架,有着非常漂亮的语法,可以写出结构性强,非常容易读懂的测试。UI Automation是Apple官方提供的UI自动化测试的解决方法,但接口不够丰富。
l KIF、Frank、Calabash都是通过使用代码的形式来模拟事件触发,使得被测代码就像是由用户行为所触发的一样。但这样的代价是插入一个额外层的复杂度。
l IOS测试框架中支持BDD的有calabash 和Kiwi。
l 可选用的单元测试框架有Kiwi,Specta,Quick等,而KIF,Subliminal和calabash更适用于UI级验收测试
(三)选择手机端APP自动化测试实现方式
1.Android
Android使用的框架首选appium,因为这是目前解决方案最多的一种框架,使用其他的如果出现了问题,就可能造成永远阻塞
实施方法:https://testerhome.com/topics/10029
实现时间:1个月
2.iOS
可选的框架:
1,Appium:这个坑比较多,需要填坑
2,使用其他框架,需要学习非Python语言,可以使用UIAutomation

(四)微信自动化测试
市面上没有解决方案,腾讯移动品质中心TMQ在开发开源测试框架中,等待发布后,使用此框架
方案地址:FAT(Fast-AutoTest) —专业服务于微信H5/小程序UI自动化测试
特点:
(1)全面支持微信H5页面,能识别常见H5控件,能获取页面任意内容(常见的如文字、图片、链接等);
(2)全面支持小程序内控件识别,操作,页面内容获取等;
(3)支持基础的性能测试监控;
(4)支持安卓Native页面组合操作使用;
(5)简单的API设计,使用门槛低;
(6)提供日志等级开关,方便调试定位。
<自动化测试方案_8>第八章、手机端UI自动化测试的更多相关文章
- 【minicap】基于图像识别的手机端UI自动化测试的截图方式更新
minicap属于STF框架的一个工具,可以高速截图.同步手机屏幕至浏览器等 为什么用minicap截图: 经过试验,截同一个屏幕的一张图,adb shell screencap速度为2.9秒,而 ...
- 手机端 UI一些插件
手机弹出框 http://yun.baidu.com/share/link?shareid=3523128425&uk=2685891615
- <自动化测试方案_6>第六章、API自动化测试
第六章.API自动化测试 (一)工具实现 目前大众接口测试的工具有:Postman.SoupUI.jmeter他们的特点介绍有人做个宏观的研究,这里进行引用:https://blog.csdn.net ...
- <自动化测试方案书>方案书目录排版
自动化测试方案书 一.介绍 QQ交流群:585499566 这篇是一个系列,用来给需要做自动化测试方案的人做个参考,文章的内容是我收集网上和自己工作经验所得,希望能够给你们有所帮助 背景:因为工作需要 ...
- 腾讯优测优分享 | 游戏的UI自动化测试可以这样开展
腾讯优测是专业的自动化测试平台,提供自动化测试-全面兼容性测试,云真机-远程真机租用,漏洞分析等多维度的测试服务,让测试更简单! 对于目前的两大游戏引擎cocos-2dx.unity3D,其UI自动化 ...
- [原创]浅谈Web UI自动化测试
[原创]浅谈Web UI自动化测试 Web UI自动化测试相信大家都不陌生,今天来谈谈这个,我最早接触自动化测试时大约是在2004年,2006年当时在腾讯财付通算是开始正式接触自动化测试,之所以是正式 ...
- 从一次故障聊聊前端 UI 自动化测试
背景 事件的起因在于老板最近的两次"故障",一次去年的,一次最近.共同原因都是脚手架在发布平台发布打包时出错,导致线上应用白屏不可用. 最神奇的是,事后多次 Code Review ...
- 关于Selenium remote模式分布式执行UI自动化测试必定面临的性能问题
1.大部分自动化测试人员都是在本地执行UI自动化测试,也就是代码和浏览器必须在同一台机器上,这样的的缺陷很多,无法多任务并发执行UI自动化测试用例,效率极低 2.正是如此,Selenium 的remo ...
- 网易与Google合作发布开源UI自动化测试方案 牛逼:Google 方面评价,这可能是目前世界上最好的 Android 游戏自动化测试方案。
美西时间 3 月 19 日,在 GDC 开幕第一天的 Google 开发者专场,Google 发布了一款由网易研发的 UI 自动化测试方案:Airtest Project.Google 方面评价,这可 ...
随机推荐
- JavaScript构造函数
JavaScript不同于其他强类型语言,没有类的概念,但是它支持可以与实例共同使用特殊的Constructor构造器,使用new关键字创建新的实例,并告知JavaScript使用对象的内规则去定制这 ...
- 内置对象Cookie和Session有何不同【常见面试题】
我们在面试的时候,时常会被问到Cookie和Session的区别,对于初学者来说,有时候会混淆这两个内置对象.下面就我自己的理解,对这2个内置对象进行剖析. 1.Session对象存在Web服务器端, ...
- 简述Java变量和强制转换类型
简述Java变量和强制转换类型 java变量 1. java变量 变量:顾名思义,就是在java执行程序过程中可以发生改变的量,就好比方程式中的未知数X一样. 变量的内存分配过程 int a ; // ...
- redis增删查改数据Util
目录 (1)需要导入的包 (2)redis配置文件 (3)RedisUtil类 (1)需要导入的包 <dependency> <groupId>org.springframew ...
- Dynamics 365 CE在Pre Delete插件中应用Image
微软动态CRM专家罗勇 ,回复327或者20190428可方便获取本文,同时可以在第一间得到我发布的最新博文信息,follow me! 在插件中限制记录的删除是常见的场景,比如根据statuscode ...
- pytest框架之命令行参数1
前言 pytest是一款强大的python自动化测试工具,可以胜任各种类型或者级别的软件测试工作.pytest提供了丰富的功能,包括assert重写,第三方插件,以及其他测试工具无法比拟的fixtur ...
- pyspider 文档介绍
一 代码区结构 def on_start(self)是脚本的入口点.单击run仪表板上的按钮时将调用它. self.crawl(url, callback=self.index_page)*是这里最重 ...
- Linux 桌面玩家指南:07. Linux 中的 Qemu、KVM、VirtualBox、Xen 虚拟机体验
特别说明:要在我的随笔后写评论的小伙伴们请注意了,我的博客开启了 MathJax 数学公式支持,MathJax 使用$标记数学公式的开始和结束.如果某条评论中出现了两个$,MathJax 会将两个$之 ...
- idea中去除重复代码提示的灰色波浪线
可以看到上面代码中的灰色波浪线,特别影响观感,可以看到是因为有了重复代码.不确定它是怎么确定重复代码的. 解决办法: Setting--Editor--Inspections--General---D ...
- nginx在Centos7.5下源码安装和配置
安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...