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/
• Chromedriver: https://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了
appium环境搭建及命令行启动sdk模拟器-附踩坑以及解决过程的更多相关文章
- NET Core 环境搭建和命令行CLI入门
NET Core 环境搭建和命令行CLI入门 2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文 ...
- NET Core 环境搭建和命令行CLI入门[转]
NET Core 环境搭建和命令行CLI入门 时间:2016-07-06 01:48:19 阅读:258 评论:0 收藏:0 [点我收藏+] 标签: N ...
- 云服务器搭建redis主从复制以及哨兵模式(附踩坑记录)
云服务器搭建redis主从复制以及哨兵模式(附踩坑记录) 踩坑记录见最后 搭建一主两从: 在根目录下任意新建一个目录/myredis来存放配置文件: 将我们常用的redis.conf文件拷贝到该目录下 ...
- .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...
- Egret 学习之简介,环境搭建及命令行语法 (一)
1,简介 1)egret是一个开源免费的游戏框架,它使用TypeScript脚本语言进行开发:当游戏完成最终的打包后,可以将程序转换为h5游戏,实现跨平台性:它基于BSD(Berkly Softwar ...
- RobotFramework+Selenium2+Appium环境搭建
转载:https://www.cnblogs.com/testway/p/7372326.html 装python 2.7 RobotFramework是python2 写的,图形界面使用的wxpyt ...
- Appium客户端,命令行启动server
目标:通过命令行启动Appium的server 1.通过命令行安装的Appium 直接命令行输入appium即可启动服务 2.安装的Appium客户端 可以查看客户端中打印的启动日志: ...
- Appium命令行启动,提示找不到命令,本地没有appium.cmd文件
安装appium时,直接从github上下载的appium-desktop-windows版本,安装后,从打开桌面端Server,能启动服务,appium-doctor也能正常运行. 但奇怪的地方来了 ...
- Appium python自动化测试系列之appium环境搭建(二)
2.1 基础环境搭建 当我们学习新的一项技术开始基本都是从环境搭建开始,本书除了第一章节也是的,如果你连最基础的环境都没有那么我们也没必要去说太多,大概介绍一下: 1.因为appium是支持andr ...
- Python+Appium环境搭建
1.python环境搭建,这里就不做过多介绍 2.安装 node.js 2.1.官网下载node.js:https://nodejs.org/en/download/ 2.2.获取到安装文件后,直接双 ...
随机推荐
- vue router动态添加路由报警告:router.addRoutes() is deprecated and has been removed in Vue Router 4. Use router.addRoute() instead.
原因: 新版本router.addRoutes已废弃:使用 router.addRoute() 代替. //addRoutes的使用方法: router.addRoutes(newRoutes) // ...
- abc366
E 解题思路 这题求的是满足\(\sum^n_{i=1}(|x-x_i|+|y-y_i|)\leq D\) 的坐标\((x,y)\) 的数目,由于是求和,所以\(x,y\) 之间是相互独立的 第一步, ...
- 【SpringCloud学习笔记(一)】搭建一套环境
学习的目的 最近做的项目中用到了Spring Cloud,为了能够更好的做好项目,自然少不了去研究一下Spring Cloud. 我的计划是结合一些书本和课程,自己写一点简单的Demo代码,验证Spr ...
- [粉丝问答16]应届生被放鸽子,怒怼HR!找工作和找对象哪个更残酷?
很多应届生在求职过程中遇到过被放鸽子的情况,但是由于段位不高,资源不够,社会阅历尚浅,很多人都是忍气吐声,但是也不乏有些学生性格刚硬,怒怼的. 比如下面这位学生,竟然直接怼了HR. 0.应届硕士小伙怒 ...
- netcore高级知识点,内存对齐,原理与示例
最近几年一直从事物联网开发,与硬件打交道越来越多,发现越接近底层开发对性能的追求越高,毕竟硬件资源相对上层应用来实在是太缺乏了.今天想和大家一起分享关于C#中的内存对齐,希望通过理解和优化内存对齐,可 ...
- SQL全表扫描优化基础知识
1.模糊查询效率很低: 原因:like本身效率就比较低,应该尽量避免查询条件使用like:对于like '%...%'(全模糊)这样的条件,是无法使用索引的,全表扫描自然效率很低:另外,由于匹配算法的 ...
- 小tips:node版本管理工具nvm
nvm是node版本管理工具 为了解决node各种版本存在不兼容现象 nvm是让你在同一台机器上安装和切换不同版本的node的工具 安装 nvm-windows 最新下载地址: https://git ...
- Rounding
前言 以前写过一篇关于 Rouding 的 decimal, double, float, 但有点杂乱, 这篇做一个整理. Why need rouding? 除法会诞生小数. 甚至会诞生无限小数 ( ...
- 游览器 reflow
refer: https://juejin.im/post/5a9372895188257a6b06132e reflow 伤性能. 所以要闪. 有几个频密触发的东西要留意. 1. scroll 2. ...
- ASP.NET Core C# 反射 & 表达式树 (第一篇)
前言 以前就写过几篇关于反射和表达式树的学习笔记, 但是写的很乱. 最近常用到反射和表达式树, 所以特别写一篇做一个整理吧. 泛型和反射 表达式树 学习笔记 c# 常用反射和表达式树整理 反射在项目中 ...