appium环境搭建及命令行启动sdk模拟器-附踩坑以及解决过程

安装教程这里就不阐述了,网上一大堆教程,下载完成后安装然后配置对应的环境变量即可

android sdk及java home配置:

 path配置:

 

%ANDROID_HOME%\platform-tools:这个目录用于配置adb、fastboot,这两个就不多说了,喜欢刷机的同学应该用的也比较多哈哈,当前这里不是为了刷机,扯远了

%ANDROID_HOME%\build-tools\30.0.0:用于快捷构建打包apk

E:\android-sdk-windows\tools:sdk工具包,可用于命令行启动sdk等

E:\nodejs\:node环境

sdk目录详解: https://www.jianshu.com/p/285150f1e1d0

附各个工具下载地址

Appium 参考文档汇总
Android Studio 下载: https://developer.android.com/studio#downloads
雪球股票下载: https://sj.qq.com/myapp/detail.htm?apkName=com.xueqiu.android
Appium Desktop 下载: https://github.com/appium/appium-desktop/releases
capability 能力图谱: https://github.com/appium/appium/blob/master/docs/en/writingrunning-appium/caps.md
元素定位: http://appium.io/docs/en/commands/element/findelements/index.html#selector-strategies
Android uiautomator 定位: http://appium.io/docs/en/writing-runningappium/android/uiautomator-uiselector/
hamcrest 断言: https://github.com/hamcrest/PyHamcrest
PageObject 设计模式: https://martinfowler.com/bliki/PageObject.html
selenium PO https://github.com/SeleniumHQ/selenium/wiki/PageObjects
mozilla POM https://github.com/mozilla/PyPOM
devtools 协议: https://chromedevtools.github.io/devtools-protocol/
Chromedriverhttps://github.com/appium/appium/blob/master/docs/en/writing-runningappium/web/chromedriver.md
小程序: https://developers.weixin.qq.com/miniprogram/dev/framework/details.html
ai 识别 https://github.com/testdotai/appium-classifier-plugin
adb server 通讯协议: https://github.com/cstyan/adbDocumentation
https://github.com/SeleniumHQ/mobile-spec/blob/master/spec-draft.md
https://w3c.github.io/webdriver/
Appium 安装
https://shimo.im/docs/YR3Vjd8jcCkGpPYr/
安装完成后:
使用appium-doctor验证环境是否安装完成

核心的几个依赖出现勾勾说明基础环境已经部署ok

 

接下来下载sdk镜像:
cmd 输入android启动sdk管理器:

 

 然后根据需要下载对应版本镜像:
  

 

 图中分别对应intel平台的32与64镜像,推荐64位,ps:如果发现运行卡的化安装一下HAXM,用于虚拟化加速

 

选择对应的对应的镜像后点击install,会自动完成下载与安装

此时启动avd manage创建虚拟设备把:
 

 

 

 

 这里我已经配置两台设备对应android10与android9:为啥会展示感叹号呢:

ps:因为我前期用这个avd创建出来的设备发现启动不了,后来我就用Android studio里面的avd manage创建的,这里这里为了说明此坑,所以这里建议用android studio里面的avd manage创建配置虚拟设备,这里我测试过只能启动android7及之下的sdk模拟器,新版本启动会提示分区错误(ERROR: resizing partition e2fsck failed with exit code 8),搞了半天没解决,无解,所以我后面就用了android studio里面的avd manage

接下来我们用android studio创建虚拟设备(这里我是下载的最新版的,不同版本可能会有差异:须知):

 

 

 接下来选择机型:

 

 

 

 这里就可以发现差异:sdk 里面avd manager并没有pixel的这些机型,这就可以解释上面的感叹号了,老机型只能启动android7及之下的sdk版本(亲测)

 选择镜像:(这里以android10为例)

 

 配置模拟器设备名称:

 

 点击finish就ok了

接下来启动模拟器(可以双击列表亦可以点击播放按钮):

  

 

 可能会提示莫名错误例如:
  

 

 不用管,能正常启动就行

 

 启动完成的样子

这样有个很不方便的地方就是必须要打开android studio然后启动avd manage然后才行启动模拟器,是不是很不方便,作为一个懒得一批的人,这样简直不能忍,命令行启动安排:

百度了几种命令行启动的方法:
这个是最简洁的:https://blog.csdn.net/qq_34514388/article/details/95340113

 

 

 

 可以发现这里的list名称就是我们刚刚的那个名称,命令启动用的就是他

启动:
 你会发现,我擦,翻车了

 

 为啥不好使了呢,为啥android studio里面可以正常启动,到这里就翻车了呢

后来查了下原因,发现

 

 

 

 

 

 这两个目录都存在emulator:

 %ANDROID_HOME%\emulator:用于命令快捷启动emulator(sdk模拟器,此处有坑,网上的教程都说是用tools下的emulator启动,结果发现新版本的android sdk镜像是启动不了的)

 

 

 然后再次执行刚刚的命令:

  

 

 咦,为啥还是不行呢,环境变量的优先级问题,由于E:\android-sdk-windows\emulator与E:\android-sdk-windows\tools这两个路径下都存在emulator.exe这个文件但是E:\android-sdk-windows\tools这个配置在前面的所以

会优先执行tools目录下的emulator,

会优先执行tools目录下的emulator,

会优先执行tools目录下的emulator!我们改下顺序再试试:

 

 所以我们在环境环境变量的时候如果出现了运行同一个命令时,出现了执行的预期与你预想的不一致时,就应考虑是不是类似的问题导致的!!!

接下来就可以愉快的玩耍appium了

posted @ 2020-07-04 14:05  wan了个蛋  阅读(681)  评论(0编辑  收藏  举报