一、下载并安装appium客户端(勿装1.15.1版本,1.15.1版本很多坑)
进入appium官网http://appium.io/下载版本,将下载好的版本按照步骤进行安装



Appium-Python-Client第三方包
pip3 install Appium-Python-Client -i https://pypi.tuna.tsinghua.edu.cn/simple

二、配置jdk及Android sdk环境
2.1、jdk8下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
按照步骤进行安装jdk
2.2、Android SDK下载地址:http://dl.google.com/android/android-sdk_r23.0.2-windows.zip
2.2.1、下载SDK后解压文件,运行SDK Manager安装platform-tools
2.2.2、配置Android环境变量
1)、新增系统变量,变量名:ANDROID_HOME,变量值:Android SDK存放根目录
2)、在系统变量path中新增变量:;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;




三、appium启动Android app
android (vivo x21) desired capabilities:
{ “appPackage”: “com.lumiunited.aqarahome”, “appActivity”: “com.lumiunited.aqara.main.SplashActivity”, “noReset”: “true”, “platformVersion”: “9”, “deviceName”: “android”, “platformName”: “Android” }
直接套用会使用就可以
import time
from appium import webdriver

desired_caps = {}
desired_caps[‘platformName’] = ‘Android’ # 打开什么平台的app,固定的 > 启动安卓平台
desired_caps[‘platformVersion’] = ‘6.0.1’ # 安卓系统的版本号:adb shell getprop ro.build.version.release
desired_caps[‘deviceName’] = ‘P10’ # 手机/模拟器的型号:adb shell getprop ro.product.model
desired_caps[‘appPackage’] = ‘io.appium.android.apis’ # app的名字:
# 安卓8.1之前:adb shell dumpsys activity | findstr “mFocusedActivity”
# 安卓8.1之后:adb shell dumpsys activity | findstr “mResume”
desired_caps[‘appActivity’] = ‘.ApiDemos’ # 同上↑
desired_caps[‘unicodeKeyboard’] = True # 为了支持中文
desired_caps[‘resetKeyboard’] = True # 设置成appium自带的键盘
desired_caps[‘noReset’] = True # 使用app的缓存

去打开app,并且返回当前app的操作对象

driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)



四、appium 启动iOS app
4.1、iOS真机安装webdriveragent(appium自带WDA,WDA路径见配置环境中问题记录2)
1)、终端进入目录:/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/webdriveragent
2)、执行脚本
命令行终端到wda根目录下, 运行./Scripts/bootstrap.sh
3)、打开项目,配置开发者证书,WebDriverAgentRunner项目build setting修改bundle Id为唯一标识(如com.lumi.WebDriverAgentRunner),product-》test运行
4)、浏览器输入http://localhost:8100/status,可显示结果数据,例如下:
{ “value” : { “message” : “WebDriverAgent is ready to accept commands”, “state” : “success”, “os” : { “name” : “iOS”, “version” : “13.4.1”, “sdkVersion” : “13.4” }, “ios” : { “simulatorVersion” : “13.4.1”, “ip” : “10.0.100.19” }, “ready” : true, “build” : { “time” : “May 21 2020 18:36:31”, “productBundleIdentifier” : “com.facebook.WebDriverAgentRunner” } }, “sessionId” : “B9BE0798-C334-47BE-AFDF-F99D12CC036D” }
WebdriverAgent环境配置成功
5)、启动appium,配置desired capability为:
{ “bundleId”: “com.lumiunited.pre.homekit”, “automationName”: “XCUITest”, “platformVersion”: “13.4.1”, “deviceName”: “iphone”, “platformName”: “iOS”, “udid”: “2e6939b70da40972c17971831a7ed4e43087b8e9” }

五、配置环境中问题记录:
1、appium配置Android desired capabilities 启动时提示The ANDROID_HOME environment variable is not set to the Android SDK root directory path. ANDROID_HOME is required for compatibility with SDK 23+. Checking along PATH for adb(电脑已配置Android SDK环境)
解决方案:

appium-》Configurations配置Android sdk路径,重启appium可正常启动Aqara Home app

2、appium 1.15.1版本webdriver路径为:/Applications/Appium.app/Contents/Resources/app/node_modules/appium-webdriveragent
appium通用路径为:/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/webdriveragent
3、执行脚本时提示 ./Scripts/bootstrap.sh提示ERROR in ./js/app.js Module parse failed:/app.js Unexpected token错误
解决方案:1、修改Inspector下webpack.config.js文件
2、去掉babel-loader配置后的,“exclude: /node_modules/”
3、删除Inspector下node_modules文件夹
4、重新执行 “sh ./Scripts/bootstrap.sh”
4、运行时提示’assign’ property of object type may become a dangling reference; consider using ‘unsafe_unretained’
解决方案:我们在报错出双击,进入到报错代码处,将assign改为strong后再次build

Appium 环境搭建相关推荐

  1. Windows下Appium环境搭建(java版)

    因为毕业后学过java,工作后服务端开发用的也基本都是java,所以对java比较熟悉,本篇文章暂时先介绍java版本的appium环境搭建,以后会陆续介绍python版的appium,包括环境搭建. ...

  2. python手机端编程环境_Python + Appium 环境搭建

    ---恢复内容开始--- Appium自动化公司内部测试培训1-环境搭建 课程目的 一.Python + Appium 环境搭建 课程内容 1    安装前准备工作 搭建环境所需要的安装文件已经下载好 ...

  3. day17 appium环境搭建

    注意事项: 步骤一 手机链接电脑时候,手机或者电脑安装有第三方手机助手,都会链接不上 获取包名: 在cmd当中输入命令 aapt dunp badging + 包名路径 找到类似于package: n ...

  4. Appium环境搭建(Java版本)

    关于Appium环境搭建(Java版本),网上有个博客写的非常清楚,我就记录一下自己遇到的问题. Appium环境搭建(Java版本):http://blog.sina.com.cn/s/blog_a ...

  5. Python + Appium 环境搭建

    ---恢复内容开始--- Appium自动化公司内部测试培训1-环境搭建 课程目的 一.Python + Appium 环境搭建 课程内容 1    安装前准备工作 搭建环境所需要的安装文件已经下载好 ...

  6. Appium环境搭建和检测

    Appium Appium优点 开源 跨架构:NativeApp.Hybird App.Web App 跨设备:Android.iOS.Firefox OS 不依赖源码 使用任何WebDriver 兼 ...

  7. appium环境搭建(10)

    appium环境搭建比较麻烦,搭建之前先看下http://blog.csdn.net/sunfengye/article/details/77494098,能正常启动模拟器,jdk环境变量配置成功,s ...

  8. 【Appium】验证appium环境搭建是否成功并考虑脚本需要包含的参数

    前言:接上一篇的Appium环境搭建,本篇主要通过脚本去验证环境搭建的正确,以及思考我们在编写脚本时需要考虑的几个问题. 目录 一.编写脚本需要考虑的因素 二.从代码来分析因素 2.1.使用的Appi ...

  9. Mac OS下Appium环境搭建及Genymotion模拟器安装

    说明:本机Mac本上已经安装的有:Python3.JDK.Node.js. Selenium Appium环境搭建 Step1:安装Appium Python Client库 1,命令:pip ins ...

  10. 移动端自动化测试(一)appium环境搭建

    自动化测试有主要有两个分类,接口自动化和ui自动化,ui自动化呢又分移动端的和web端的,当然还有c/s架构的,这种桌面程序应用的自动化,使用QTP,只不过现在没人做了. web自动化呢,现在基本上都 ...

最新文章

  1. mac mysql5.7 my_【mysql】Mac下安装mysql5.7 完整步骤,大坑已解决
  2. mysql编码是乱码_mysql中文乱码 常见编码问题解决方法分享
  3. (转载)Python数据分析之pandas学习
  4. 2010有道难题练习赛2
  5. 数据结构——各排序算法的比较
  6. java虚拟机文件_JAVA虚拟机已经安装,但不知道在哪儿编译和运行程序。
  7. HoudahSpot查找多个文件教程:从名称列表中查找文件
  8. mysql 什么是审核上线_自动审核及上线系统
  9. php留言板示例,php留言板完整实例源码
  10. 攻击机靶机环境搭建——网络设置
  11. 并查集:A bug's life
  12. springboot 多模块使用Jib插件发布镜像
  13. 基于牛顿法的开平方实现
  14. 卡马克算法(地图重复利用,跑酷类游戏)
  15. WinInet库之FTP通信
  16. 如何抢注好的top域名
  17. [30期] 个人职业规划
  18. 虚拟机克隆后mac地址冲突,上不了网问题解决记录
  19. 表示“各类人”的英语词缀(zt)
  20. Vue leaning(入门)第二弹

热门文章

  1. 未能配置 workstation server 的两种错误解决
  2. 软件体系结构风格复习总结
  3. 苹果6邮件服务器错了如何修改,苹果手机ID电子邮件设错了怎么改
  4. iPhone X (XS XR XSMAX)如何根据状态栏上的图标 获取设备的联网状态(不是单个应用的)
  5. 武汉大学计算机学院推免率,武汉大学保研率
  6. 浅谈,盘点历史上有哪些著名的电脑病毒,80%的人都不知道!
  7. RapidMiner介绍与实践(一)决策树
  8. Unity插件——Odin 学习笔记(二)
  9. 系统架构设计师-考试大纲
  10. 数据分类分级指南分级方法