appium+android测试环境安装
1. jdk配置
一、背景
- JDK已经更新到12了,但是由于很多工具仍然未及时更新,故推荐最稳定的JDK版本1.8.x;
- JDK需要配置通常情况下,JDK配置分为三项:
- JAVA_HOME:某些软件仍然需要
- CLASSPATH:某些Java WEB项目部署需要
- PATH:都需要(O(∩_∩)O哈哈~)
二、安装

- 这里选择自己操作系统对应的版本,如果是32位的操作系统,就选择32位的;如果是64位的就选择64位
- 点我查看系统版本
三、配置
1. 解压
解压到 C:\Program Files (x86)\Java\
2. 配置
右键计算机 > 属性 > 高级系统设置 > 环境变量 > 系统变量 进行设置


3. 环境变量设置
新建JAVA_HOME: C:\Program Files (x86)\Java\jdk1.8.0_171
image.png
- 新建CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

PATH环境添加:;%JAVA_HOME%\BIN;%JAVA_HOME%\JRE\BIN;
image.png
CLASSPATH如果存在,就直接添加
4. 验证
- 输入:java -version
- 输入:javac -version
- 如图显示后,即可正常

2. 安卓sdk配置
一、 简介
Android Debug Bridge,我们一般简称为adb,主要存放在sdk安装目录下的platform-tools文件夹中,它是一个非常强大的命令行工具,通过这个工具用来连接电脑和Android设备(手机、电脑、电视、平板、电视盒子等)。
二、安装
1. 下载安装包:
链接: https://pan.baidu.com/s/1ar6OPXCRohYXFAa83wmoxQ
提取码: 54zh
2. 解压文件包到固定位置:D:\android-sdk-windows

3. 新建a环境变量;将b c环境变量添加到path环境下
* a. 添加环境变量:
变量名:ANDROID_HOME
变量值:D:\android-sdk-windows
* b. 在path目录最后面添加:%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

4. 打开命令提示符:win键+R,并输入“cmd”
5. 在cmd输入命令验证添加环境变量是否成功:adb version

三、准备模拟器
1. 下载并安装雷电模拟器:http://www.ldmnq.com/
2. 安装完成后,我们需要查看雷电模拟器是否连接adb,在cmd中输入命令:adb devices

四、常用命令
4.1 adb kill-server和adb start-server
关闭adb server和开启adb server。
有时候ADB Server会出现异常故障,我们组需要使用上述命令重启ADB Server。

4.2 adb devices
查看当前PC端连接有多少设备,通常使用此命令判断设备是否连接上电脑。

4.3 adb logcat
获取设备运行日志。通过该命令捕获安卓APP崩溃时的异常信息,帮助问题定位。

然后找到并打开日志,分析其中异常信息。

4.4 adb install
栗子:adb install xxx.apk
作用:给安卓设备安装xxx软件。运行命令后,有些手机手动确认允许电脑安装软件。

4.5 adb pull
栗子:adb pull /sdcard/123.txt C://abc
作用:将设备文件/sdcard/文件夹下的123.txt文件复制到电脑的C盘adb文件夹下。
4.6 adb push
栗子:adb push C://123.txt /sdcard/
作用:将电脑C盘目录下的123.txt文件复制到设备/sdcard/下。
4.7 adb shell
进入安卓设备的shell终端。安卓是给予Linux开发的,每一个安卓设备都自带shell终端。

我们可以使用shell终端来进行各项操作,比如查看文件目录:ls

或者可以查看安卓手机运行状态:top

还可以查看手机剩余运行内容:free -m

还可以查看手机剩余存储空间:df

3. appium-desktop安装
- 64位:链接: https://pan.baidu.com/s/1a3-_X6WU9B48UWufePZOJQ 提取码: pqfe
- 32位:链接: https://pan.baidu.com/s/1pBv7DpcMUB2kvsihu7vY3A 提取码: 37m1
4. 安装appium的安卓客户端
- pip3 install Appium-Python-Client -i https://pypi.tuna.tsinghua.edu.cn/simple
5. 安装安卓模拟器
- 下载并安装雷电模拟器:http://www.ldmnq.com/
- 打开雷电模拟器
6. 安装被测APP
传送门:链接: https://pan.baidu.com/s/1Yexgofqhb7w3F1U9RTBW_w 提取码: fv7s
7. 连接安卓设备
1 打开appnium客户端,开启服务
2 cmd-->adb devices 连接
3 abd devices -l 查看手机的信息
8. 编写appium的python代码
# 1.导入appium的webdriver
from appium import webdriver def get_driver():
"""
获取设备driver
"""
desired_caps = {}
desired_caps['platformName'] = 'Android' # 打开什么平台的app,固定的 > 启动安卓平台
desired_caps['platformVersion'] = '5.1.1' # 安卓系统的版本号:adb shell getprop ro.build.version.release
desired_caps['deviceName'] = 'vivo x6plus d' # 手机/模拟器的型号:adb shell getprop ro.product.model
desired_caps['appPackage'] = 'io.appium.android.apis' # app的名字:adb shell dumpsys activity | findstr "mFocusedActivity"
desired_caps['appActivity'] = '.ApiDemos' # app的启动页名字:adb shell dumpsys activity | findstr "mFocusedActivity"
desired_caps['unicodeKeyboard'] = True # 为了支持中文
desired_caps['resetKeyboard'] = True # 设置成appium自带的键盘 # 去打开app,并且返回当前app的操作对象
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps) return driver def test():
"""
查找单个元素
"""
# 获取driver
driver = get_driver() # 通过id获取元素:最准确
app = driver.find_element_by_id("android:id/text1")
app.click() # 返回键
driver.back() # 通过text获取元素
Animation = driver.find_element_by_android_uiautomator('new UiSelector().text("Animation")')
Animation.click() # 返回键
driver.back() # 通过content-desc来获取元素
app = driver.find_element_by_accessibility_id("App")
app.click() # 返回键
driver.back() # 通过xpath获取:使用最多
media = driver.find_element_by_xpath("//android.widget.TextView[@text='Media' and @content-desc='Media']")
media.click() if __name__ == "__main__":
test()
10 adb部分命令
Adb devices --查看已经连接的设备
adb version --查看版本号
adb shell pm list package 以列表的方式显示所有的包名
-s 查看系统的应用
-3 查看第三方的软件
-f 显示所有软件的包的路径 adb install 对测试机的操作
adb install xxx.apk--给安卓设备安装xxx软件。运行命令后,有些手机手动确认允许电脑安装软件
adb pull
adb pull /sdcard/123.txt C://abc adb push
adb push C://123.txt /sdcard/--将电脑C盘目录下的123.txt文件复制到设备/sdcard/下。 adb shell 进入安卓设备的shell终端。安卓是给予Linux开发的,每一个安卓设备都自带shell终端。
我们可以使用shell终端来进行各项操作,比如查看文件目录:ls
或者可以查看安卓手机运行状态:top
还可以查看手机剩余运行内容:free -m
还可以查看手机剩余存储空间:df desired_caps = {}
desired_caps['platformName'] = 'Android' # 打开什么平台的app,固定的 > 启动安卓平台
desired_caps['platformVersion'] = '5.1.1' # 安卓系统的版本号:adb shell getprop ro.build.version.release
desired_caps['deviceName'] = 'vivo x6plus d' # 手机/模拟器的型号:adb shell getprop ro.product.model
desired_caps['appPackage'] = 'io.appium.android.apis' # app的名字:adb shell dumpsys activity | findstr "mFocusedActivity"
desired_caps['appActivity'] = '.ApiDemos' # app的启动页名字:adb shell dumpsys activity | findstr "mFocusedActivity"
desired_caps['unicodeKeyboard'] = True # 为了支持中文
desired_caps['resetKeyboard'] = True # 设
参考:https://www.jianshu.com/p/a0992243172a
appium+android测试环境安装的更多相关文章
- Appium 介绍及环境安装
Appium是一个可用于测试iOS. Android操作系统和Windows桌面平台原生应用,移动网页应用和混合应用的自动化测试框架. 原生应用(Native App):用 android.iOS或者 ...
- Android测试环境搭建
Android测试环境搭建 一.操作系统 使用Win7_64位操作系统.(可以用其他的系统,下面都是针对Win7 64位进行操作) 二.安装JDK 运行jdk-6u45-windows-x64.exe ...
- [转载]SharePoint 2013测试环境安装配置指南
软件版本 Windows Server 2012 标准版 SQL Server 2012 标准版 SharePoint Server 2013 企业版 Office Web Apps 2013 备注: ...
- android编译环境安装
Android 编译环境安装 安装 Java 6 安装 Java 6 安装依赖包 (Ubuntu 12.04) $ sudo apt-get install git gnupg flex bison ...
- Appium 自动化测试(2)--环境安装:安装Android模拟器
一.安装java 环境-JDK 略,自行百度安装. 二.安装Android SDK Android SDK提供给我们API库和开发工具构建,测试和调试应用程序,Android.简单来讲,Android ...
- 在Mac OSX上配置Appium+Android自动化测试环境
前提准备 开始正文之前,你需要准备好一些基本条件: 1.安装好Mac OSX 操作系统的设备 2.能够访问中国局域网以外资源的方法(没有也行,但很痛苦) 3.已经安装好 homebrew 4.已经安装 ...
- 在Mac OSX 上配置Appium+Android自动化测试环境
前提准备 开始正文之前,你需要准备好一些基本条件: 安装好Mac OSX 操作系统的设备 能够访问中国局域网以外资源的方法(没有也行,但很痛苦) 已经安装好 homebrew 已经安装好 Python ...
- Android测试环境搭建(win7)
一.安装JDK并配置环境变量 1.在Java官方网站上下载相应系统的jdk文件安装,如win7 64 位系统下安装jdk-6u45-windows-x64,全部选择默认的安装路径即可安装完成. 2.配 ...
- 二 APPIUM Android自动化 环境搭建
1.安装JAVA运行环境 2.安装Android开发环境 3.安装nodejs 下载地址:https://nodejs.org/en/ 下载完成之后双击安装. 4.安装APPIUM,App ...
随机推荐
- servlet中使用request.getHeader("referer")获取页面从哪跳转过来的
问题 servlet中使用request.getHeader("referer")获取页面从哪跳转过来的,利用这个方法可以判断网页是否正常登录.我做了一个javaweb小项目,其中 ...
- 流程图GGEditor 之 自定义节点相关属性
自定义节点 注册 -- registerNode 我们通过以下接口往 G6 全局注册节点: // 注册节点 G6.registerNode(name, { // 绘制 draw(item) { r ...
- NIO学习笔记,从Linux IO演化模型到Netty—— 从BIO到epoll模型
本文不涉及具体代码,只分析Linux IO演化的心路历程,学习资料来源网络,不保证一定正确,若有错误,欢迎指出. BIO 服务端创建socket(80端口),文件描述符3号. 当线程调用accept时 ...
- mysql-主从备份问题小结
一:防火墙 常用命令 firewall-cmd --state 或 systemctl status firewalld # 查看状态 systemctl start firewalld# 启动 sy ...
- P4075 [SDOI2016]模式字符串
总结 P4075 [SDOI2016]模式字符串 题目描述 给出n个结点的树结构T,其中每一个结点上有一个字符,这里我们所说的字符只考虑大写字母A到Z,再给出长度为m的模式串s,其中每一位仍然是A到z ...
- perfdog使用手册
PerfDog(性能狗)测试须知 Android平台 ScreenShot(只支持USB模式) FPS(1秒内游戏画面或者应用界面真实平均刷新次数,俗称帖率/FPS) 1)Avg(FPS):平均帖率 ...
- 【spring boot】SpringBoot初学(6)– aop与自定义注解
前言 github: https://github.com/vergilyn/SpringBootDemo 一.AOP 官方demo:https://github.com/spring-project ...
- Spark学习之路 (十)SparkCore的调优之Shuffle调优[转]
概述 大多数Spark作业的性能主要就是消耗在了shuffle环节,因为该环节包含了大量的磁盘IO.序列化.网络数据传输等操作.因此,如果要让作业的性能更上一层楼,就有必要对shuffle过程进行调优 ...
- leetcode四道组合总和问题总结(39+40+216+377)
39题目: 链接:https://leetcode-cn.com/problems/combination-sum/ 给定一个无重复元素的数组 candidates 和一个目标数 target ,找出 ...
- springboot的yml配置文件里有多个参数的调用方式
本篇教程适用于配置文件一级下有多个二级或三级时,如何在service层不用通过多个@Value就能获取配置文件的参数 例如yml配置是这样的: 如果service层要引用这些参数,用多个@Value( ...

