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命 ...
随机推荐
- Spring boot +mybatis 连接mysql数据库,获取JDBC失败,服务器时区价值”Oйu±e×¼e±¼的识别或代表多个时区
报出的错误 Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connec ...
- Ajax原理以及优缺点
ajax原理和XmlHttpRequest对象 Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面.这其 ...
- C++ opencv调用resize修改插值方式遇到的坑
opencv提供的热死则函数原型如下:void resize(InputArray src, OutputArray dst, Size dsize, double fx=0, double fy=0 ...
- 汇编-10.0-CALL和RET指令
call和ret指令都是转移指令,他们都是修改IP,或同时修改CS和IP.它们常被共同用来实现子程序设计. 1.ret和retf ret指令用栈中的数据,修改IP的内容,从而实现近转移: retf指令 ...
- opencart分类筛选逻辑修改为并且条件
opencart分类筛选模式默认是或的逻辑,满足条件1或条件2都展现出来,如果想要改成既满足条件1又满足条件2要怎么改呢?有一个插件可以实现,FixFilter OC2x,可以修改默认的筛选条件 1. ...
- Socket断开不报错(Java)
网上看了很多关于Socket的Demo,用起来挺好用也简单,不过都在断开连接时,都没有做好相关处理,导致每次主动断开时,会报错 如: java.net.SocketException: Socket ...
- 【Mac】-NO.161.Mac.1 -【MacOS 中环境变量设置 zsh: command not found: xxx】
Style:Mac Series:Java Since:2018-09-10 End:2018-09-10 Total Hours:1 Degree Of Diffculty:5 Degree Of ...
- jmeter-PC注册遇到的问题与解决
2019-04-26问题:
- html-webpack-plugin插件使用
项目使用hightopo框架,使用webpack打包.这里的场景是:点击预览按钮,页面会打开一个新页面. 但是由于使用了webpack打包,所以直接使用以下代码是不行的.报404 window.ope ...
- 接口自动化框架(java)--1.项目概述
项目github地址: https://github.com/tianchiTester/API_AutoFramework 这套框架的报告是自己封装的 1.测试基类TestBase: 接口请求的te ...