Native App自动化测试及Appium框架介绍
一 自动化工具简介
1 Appium : 开源,跨平台的自动化测试工具,用于测试Native(原生)和Hybrid(混合)应用,支持IOS/Android/FirefoxOS 平台。
2 环境 : 在不同平台中,Appium是基于不同框架的,Android平台中是基于Uiautomator框架的
3 理念:
- 无需重新编译应用(和instrumentation对比,无需源码就可实现测试过程);
- 不局限与语言和框架;
- 无需重复造轮子,接口统一
- 必须开源
4 特点:
跨架构:Native,Hybrid,Webview
跨设备:IOS,Android,FirefoxOS
跨语言:Java , Python, Ruby , PHP, JavaScript
跨进程:不依赖源码(基于Uiautomator)
5 架构:

Bootstrap.jar ——为了UiAutomator能控制app ,将其提供的各个Api进行封装 , 封装好的这个驱动程序就是Bootstrap.jar文件 ,该文件由Uiautomator Controller 推送到安卓手机当中的,本来手机当中没有,运行驱动的同时要启动一个Server
UiAutomator Command server ——该server的启动过程依赖于Bootstrap.jar, 用于接受各种command
UiAutomator Controller(Android)——负责将Appium自带的Bootstrap.jar,通过adb命令,推送到手机端,再通过一条指令,将其启动,然后Bootstrap.jar会监听一个端口
UiAutomator Command client——负责发出各种自动化指令到UiAutomator Command server ,这里的指令来自WebDriver script
二 环境的准备
- appium
- test device
- test app
- appium-python-client , Selenium(依赖库)
三 元素识别工具
UIAutomatorviewer : 应用及启动 ,略~
四 脚本设计原则
LOVE原则:L——Locate : 定位元素 ; O——Operate : 操作元素 ; V——Verify : 验证结果 ; E——Exception : 处理异常
五 脚本实现
Native App自动化测试及Appium框架介绍的更多相关文章
- Android Native App自动化测试实战讲解(上)(基于python)
1.Native App自动化测试及Appuim框架介绍 android平台提供了一个基于java语言的测试框架uiautomator,它一个测试的Java库,包含了创建UI测试的各种API和执行自动 ...
- Android Native App自动化测试实战讲解(下)(基于python)
6.Appuim自动化测试框架API讲解与案例实践(三) 如图1,可以在主函数里通过TestSuite来指定执行某一个测试用例: 6.1,scroll():如图2 从图3中可以看到当前页面的所有元素r ...
- Appium 自动化测试(3)--Appium框架与流程介绍
Appium介绍 Appium是一个移动端的自动化框架,可用于测试原生应用,移动网页应用和混合型应用,且是跨平台的.可用于IOS和Android以及firefox的操作系统.原生的应用是指用andro ...
- 自动化测试===Httprunner测试框架介绍
项目地址: https://github.com/HttpRunner/HttpRunner 中文手册: http://cn.httprunner.org/ 首先是环境搭建: pip install ...
- Appium 自动化测试(5)-- Appium详细介绍:Appium 手机自动化测试_TesterHome公开版pdf
- Android App自动化测试实战(基于Python)(三)
1.Native App自动化测试及Appuim框架介绍 android平台提供了一个基于java语言的测试框架uiautomator,它一个测试的Java库,包含了创建UI测试的各种API和执行自动 ...
- app 自动化测试 - 多设备并发 -appium+pytest+ 多线程
1.appium+python 实现单设备的 app 自动化测试 启动 appium server,占用端口 4723 电脑与一个设备连接,通过 adb devices 获取已连接的设备 在 pyth ...
- fitnesse - 框架介绍
fitnesse - 框架介绍 2017-09-29 目录: 1 fitnesse是什么?2 框架介绍3 与junit.testng比较,fitnesse教其他框架有什么优势 1 fitnesse是什 ...
- 『与善仁』Appium基础 — 8、Appium自动化测试框架介绍
目录 1.主流的移动端自动化测试框架 (1)Robotium (2)Macaca (3)Appium 2.自动化测试工具的选择 3.Appium简介 提示:我们前面说的Android环境搭建和adb命 ...
随机推荐
- 【感悟】一次不太好的寻找bug的体验,RecyclerView
最近在网上看Android的学习视频的时候,视频中使用了RecyclerView这个组件,我按照视频中的指示对RecyclerView进行配置. 程序编译通过了,但是在运行时程序会崩溃.我复制了日志里 ...
- VUE-002-前端分页(el-pagination)展示数据
在web开发过程中,通常使用表格展示数据,在数据较多时采用分页的方式展示给用户. 分页方式有前端假分页和后端分页两种实现方式,此文仅记录前端假分页实现方式. 第一步:添加分页组件(el-paginat ...
- python做数据驱动
python代码如下: import unittestfrom openpyxl import load_workbookfrom openpyxl.styles import Fontfrom op ...
- SpringBoot项目修改html后不即时编译
springboot templates 下的 html 修改后无法达到即时编译的效果,搜索资料后记录笔记.原文地址:https://www.cnblogs.com/jiangbei/p/843939 ...
- zblog如何更改数据库配置以及生效
zblog是一个博客的开源框架, 挺不错的,我们当前拿来作为新闻系统管理使用. 由于我们数据库需要统一使用RDS, 故对zblog数据库配置进行修改,修改文件如下: 1. 数据库文件地址: zb_us ...
- BeautifulSoup库的使用
1.简介 BeautifulSoup库也是一个HTML/XML的解析器,其使用起来很简单,但是其实解析网站用xpath和re已经足矣,这个库其实很少用到.因为其占用内存资源还是比xpath更高. '' ...
- 如何查看端口recv和send
1.进入到pod的宿主机 一般来说 ssh slaveX 2.查看进程号 top可以看到 3.执行命令 nsenter --target 10594 --net netstat -an
- BIML 101 - ETL数据清洗 系列 - BIML 快速入门教程 - 连接数据库执行SQL语句
BIML 101 - BIML 快速入门教程 第一节 连接数据库执行SQL语句 本小节将用BIML建一个简单的可以执行的包. 新建一个biml文件,贴入下面的代码 1 <Biml xmlns=& ...
- AIX7.1环境打补丁缺少bash OPATCHAUTO-72049
DB:12.1.0.2.0 RAC OS:AIX 7.1 [To patch only the GI home] su - root export UNZIPPED_PATCH_LOCATION=/o ...
- Qt QSpinBox 和 QDoubleSpinBox
展示一个效果: QDoubleSpinBox跟QSpinBox类似,只是多了一个decimal.