Appium之环境搭建
Appium:是开源、跨平台、多语言支持的移动应用自动化工具
测试对象主要有:① 原生app
② 混合app(h5 + web前端基础)
③ 移动web app
测试对象APPy运行平台: ① ios
② android
③ windows
④ FirefoxOS
测试对象APP运行环境: ① 真是设备 ② 模拟器
测试程序语言:python、java、ruby、js、php、c#
测试程序运行平台:windows、linux、mac、os
ios的应用 appium server必须要运行在苹果的机器上
MacBook
iMac
自动化原理 --- 架构图:
Node.js 是js程序的一个解释器
苹果:UIAutomation/XCTest
安卓:UIAutomator
android底层自动化工具:2.3到4.1版本 一直是用Selendroid
4.2+版本 用的是UiAutomator(90%以上市场份额)
IOS底层自动化工具:ios9.3以前,苹果使用的是UiAutomation
ios9.3+ 用XCUITest(96以上市场份额)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Appium的环境搭建:
安装Appium python client包: pip install Appium-Python-Client
一定要确保安装匹配版本的selenium和appium: pip install selenium -U
安装Appium Server:
方法1:node.js & npm
npm install -g appium
方法2:Appium Desktop(推荐)
下载地址:https://github.com/appium/appium-desktop/releases/latest
安装Android SDK:
安卓app的自动化 appium server依赖Android sdk
Android studio 包含了android sdk
官方网站:https://developer.android.google.cn/studio/ 网页下拉到Command line tools only(仅限命令行工具)..点击下方链接下载即可
版本历史记录:https://developer.android.google.cn/studio/archive.html
下载解压后,在tools目录下的bin目录下 直接进入cmd =》输入sdkmanager "platfrom-tools" "platfroms;android-28" "build-tools;28.0.3" 去执行安装组件。安装过程中会弹出提示框Accept?(y/N) 一直yes即可。
设置环境变量:
创建ANDROID_HOME 设置为sdk根目录的路径
如 变量名:ANDROID_HOME
如 变量值:C:\androidsdk
sdk\platfrom-tools\ 加入到环境变量Path中
验证是否设置成功,运行cmd打开命令提示框,输入where adb 能够显示出其所在路径即可
查看android_home的环境变量值是否正确,可以在tools/bin目录下 通过cmd 输入echo %android_home%
安装JDK:
官网www.oracle.com去安装下载。然后去设置环境变量:
如 变量名:JAVA_HOME
变量值:JDK所在根目录的路径
验证JDK是否安装成功 === cmd ----- 输入 java -version
Appium之环境搭建的更多相关文章
- appium+robotframework环境搭建
appium+robotframework环境搭建步骤(Windows系统的appium自动化测试,只适用于测试安卓机:ios机需要在mac搭建appium环境后测试) 搭建步骤,共分为3部分: 一. ...
- RobotFramwork + Appium+ Andriod 环境搭建
RF+Appium+Android环境搭建教程 - 1.RF安装 一.适用操作系统 Win7 旗舰版Sp1 32位操作系统 RF环境搭建,请参考文档<RobotFramwork安装指南> ...
- 初探appium之环境搭建
前段时间一直在折腾python的爬虫,想搞接口自动化.但是写了一个月,发现在我现在的这份的工作中根本接触不到接口.所以就想先放下来,先做点目前能够接触到的,也需要做的东西. 东西越来越多,人手不足.自 ...
- 【转】glumer Appium + Python环境搭建(移动端自动化)
最近整理了一下自动化的东西,好久没搭建环境又踩了不少坑,appium的环境搭建比较繁琐,好多同行估计都在环境上被卡死了.分享一下~~ 一.安装JDK,配置JDK环境 百度搜索下载就行,这里分享一 ...
- Appium的环境搭建和配置
Appium的环境搭建和配置 一.安装Nodejs 下载nodejs安装包(https://nodejs.org/en/download/)安装 下载后,双击安装文件,按提示来安装. 测试安装是否成功 ...
- Mac+appium+iOS 环境搭建
Mac+appium+iOS 环境搭建,需要用到的信息如下,参考搭建环境. 1.安装brew,安装介绍:https://jingyan.baidu.com/article/fec7a1e5ec3034 ...
- 全网最全最细的appium自动化测试环境搭建教程以及appium工作原理
一.前言 对于appium自动化测试环境的搭建我相信90%的自学者都是在痛苦中挣扎,在挣扎中放弃,在放弃后又重新开始,只有10%的人,人品比较好,能够很快并顺利的搭建成功.appium 自动化测试 ...
- 『与善仁』Appium基础 — 14、Appium测试环境搭建
目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...
- appium java 环境搭建
appium是一款open source 移动自动化测试框架,既支持Android 也支持IOS. appium 基于webdriver协议执行测试脚本. 今天,如炒剩饭,介绍一下搭建appium A ...
随机推荐
- 设计模式(Java语言)-单例模式
单例模式,简而言之就是在整个应用程序里面有且仅有一个实例,在程序的任何时候,任何地方获取到的该对象都是同一个对象.单例模式解决了一个全局的类被频繁创建和销毁的,或者每次创建或销毁都需要消耗大量cpu资 ...
- java编程思想第四版第五章总结
1. 构造器 构造器的一个重要的作用: 保证对象被使用之前初始化了. 构造器是一种特殊类型的方法, 因为他没有返回值.这与返回值为空(void)明显不同.对于空返回值,尽管方法本身不会自动返回什么, ...
- nyoj 290 动物统计加强版 (字典树 (Trie) PS:map<TLE>)
动物统计加强版 时间限制:3000 ms | 内存限制:150000 KB 难度:4 描述 在美丽大兴安岭原始森林中存在数量繁多的物种,在勘察员带来的各种动物资料中有未统计数量的原始动物的名单 ...
- deepin MySQL 安装以及编码格式的修改utf-8
deepin MySQL 安装以及编码格式的修改utf-8: 1.sudo apt-get install mysql-server mysql-client 2.sudo mysql -u root ...
- php Swoole实现毫秒级定时任务
项目开发中,如果有定时任务的业务要求,我们会使用linux的crontab来解决,但是它的最小粒度是分钟级别,如果要求粒度是秒级别的,甚至毫秒级别的,crontab就无法满足,值得庆幸的是swoole ...
- Missing radix parameter 错误的解决办法
下载了Mint-Ui的example,使用npm run dev时发现如下报错: ERROR in ./packages/loadmore/src/loadmore.vue ✘ http://esli ...
- Redis为什么是单线程、及高并发快的3大原因详解
Redis的高并发和快速原因 1.redis是基于内存的,内存的读写速度非常快: 2.redis是单线程的,省去了很多上下文切换线程的时间: 3.redis使用多路复用技术,可以处理并发的连接.非阻塞 ...
- 【NHOI2018】扫雷完成图
[题目描述] 扫雷游戏完成后会显示一幅图,图中标示了每个格子的地雷情况.现在,一个 n * n 方阵中有 k 个地雷,请你输出它的扫雷完成图. [输入数据] 输入共 k+1 行: 第 1 行为 2 个 ...
- 封装Ajax和跨域
目录 引言 封装ajax 案例:使用自封装ajax 案例:动态加载瀑布流 跨域 引言 对于Ajax现在相信大家已经不会陌生了,无论是原生的XMLHttpRequest方式发送还是通过jQuery框架中 ...
- Selenium多层级的iframe中元素的定位
很多时候我们遇到多层级的iframe就会想各种方法去获取iframe中的元素,但其实很简单就可以做到的,就是一级一级获取就可以了,获取至你需要的那个层级即可,下面看下实际的案例:(转) <fra ...