Appium+python自动化(五)- 模拟器(超详解)
简介
Appium是做安卓自动化的一个比较流行的工具,对于想要学习该工具但是又局限于或许当前有些小伙伴没 android 手机来说,可以通过安卓模拟器来解决该问题,下面就讲解使用appium连接安卓模拟器的操作步骤。而宏哥是由于手机数据线问题,也只好先用模拟器来替代真机玩了。所以没有安卓手机的大款的小伙伴们不要着急,这时候可以在电脑上开个模拟器玩玩,下面就分别介绍两种不同的模拟器:(1)Google自带的(2)夜神模拟器;他们的安装、配置、连接等等。下面和大家一起学习交流、分享一下。第三篇已经将AVD的操作系统下载好,这一篇将AVD将操作系统安装好,启动即可。
一、android 模拟器 AVD
模拟器配置
1、双击启动 AVD Manager,进入配置界面
3、配置模拟器基本信息
--AVD Name:设备名称,自己定义一个,用英文(不要用中文)
--Device:设备型号,如下图选项意思是,4.7 寸手机,768*1280 分辨率,屏幕密度:xhdpi
--Target:选对应 API 版本号,Android 版本号 4.4.2,对应 API 版本 19
--CPU/ABI:cpu 型号
--Keyboard:这个最好勾选,带键盘按钮
--Skin:皮肤设置,随意设置
--Front Camera:前置摄像头,设置为 None
--Back Camera:后置摄像头,设置为 None
--Memory Option :RAM 运行内存,设置 512 就行,VM Heap 这个是 app 的运行内存默认设置的 64 就行
--Internal Storage:手机本身的存储卡大小
--SD Card:外部 SD 卡的内存
4、设置好后点 OK 保存,弹出以下界面说明保存成功
5、选中上面创建成功的模拟器,点 start 按钮,然后点 Launch 按钮就能启动了
6、接下来就是耐心等待几分钟(电脑性能不好的等 5-10 分钟),运行成功出现,如下界面
7、看到上面这个界面说明启动成功了,然后跟平常操作手机一样点点点了,接下来用 adb 工具检查下设备,打开 cmd 输入adb devices
到这里模拟器就启动成功了,这样替代了真机连数据线去连电脑了.(当然,有Android手机的童靴、小伙伴们也可以直接用真机来测试)
二、夜神模拟器
1、下载链接:夜神模拟器版本,下载最新版本即可。你也可以使用Genymotion (也是国外的网站,需要注册使用-不要去看国内中文网,毛用没有,都是外链,都是坑)
2、安装过程请自行百度(傻瓜式安装即可),不想百度的可以看宏哥这边
(1)点击下载链接,进入其官方网站
(2)进入历史版本下载界面,选择你要的版本下载即可,在这里宏哥还是下载最新的
(3)双击下载好的安装包
(4)点击“自定义安装”,修改安装目录,当然了也可以默认不修改。然后点击“安装”
(5)稍等一会,出现如图
3、出现如下图即为安装成功
4、模拟器配置和遇到问题及其解决办法
>配置系统环境(老方法这里就不细说了):在Path中添加D:\software\nox\Nox\bin; (夜神模拟器安装的bin目录)
然后进入这个目录下,在地址栏输入cmd,启动cmd,输入nox_adb.exe connect 127.0.0.1:62001(为了adb连接模拟器),可能会出现以下的情况,那就是因为你的adb版本和模拟器中的adb版本不同(图1),而且环境变量配置有问题(图2),所以保证环境变量按照上边写的配置好以后,看下边图1和图2
>验证问题描述情况:(验证之前需要用老方法先配置环境变量,将SDK下的adb所在目录(D:\software\android-sdk-windows\platform-tools)、以及夜神模拟器的adb所在目录(D:\software\nox\Nox\bin)加入了系统的环境变量path中)
>解决办法:
a、关掉夜神模拟器。同时去任务管理器里看下,adb.exe以及nox_adb.exe这2个进程有没有在运行?有的话就结束掉。
b、找到SDK的目录,将你的sdk\platform-tools目录下的adb.exe复制出来,改名为nox_adb.exe,然后替换掉模拟器的bin目录下的同名文件!,因为夜神模拟器目录下原本的adb文件名字叫做nox_adb.exe,因此复制过去之后也得改名为nox_adb.exe。
c、重新启动夜神模拟器,再次进入这个目录下,在地址栏输入cmd,启动cmd,输入 nox_adb.exe connect 127.0.0.1:62001(图3),再继续,输入adb devices,看看是不是连接成功了?(图4)
三、小结
1、安装AVD的时候有了上一篇的基础,这次还是比较顺利的,基本没有遇到什么问题,安装夜神模拟器的时候那个版本不一致的问题替换了nox_adb.exe之后,输入adb.exe还是报那个kill版本不匹配的错误,着了半天才发现原来在夜神模拟器的bin目录下也有一个adb.exe文件,找到问题所在了
解决办法:简单暴力,将SDK的adb.exe直接替换夜神模拟器bin目录的adb.exe文件。
好了,就给小伙伴们介绍这两种就给用了,如用其他的可以参考这一篇文章。都是换汤不换药的。
宏哥不能保证所整理都符合大家的口味,但我能保证每一篇都是用心去写和用心去整理,我始终认同“分享的越多,你的价值增值越大”,欢迎大家关注我的博客和个人公众号的技术分享。在分享中进步,越努力越幸运,期待我们都有美好的明天!
支持宏哥的朋友们和宏哥的宏粉记得点波推荐哦,您的肯定就是我进步的动力。鄙人先在这里给您道谢了,谢您嘞~~
个人公众号(因为许多文章都被搬到别人的公众号里了,还是原创,所以宏哥果断也开一个公众号。打算与博客园文章同步,希望大家随时随地学习与进步):
微信群(因为有人给我发短消息说公司不让用QQ,就帮忙建立一个微信群,欢迎加入讨论和交流)
Appium+python自动化(五)- 模拟器(超详解)的更多相关文章
- Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP
前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...
- Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP【转载】
前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...
- Appium+python自动化10-AVD 模拟器
前言 有些小伙伴没android手机,这时候可以在电脑上开个模拟器玩玩 一.模拟器配置 1.双击启动AVD Manager,进入配置界面
- Appium+python自动化10-AVD 模拟器【转载】
前言 有些小伙伴没android手机,这时候可以在电脑上开个模拟器玩玩 一.模拟器配置 1.双击启动AVD Manager,进入配置界面
- [原创]python之简单计算器(超详解,只有基本功能+-*/,还有括号处理)
不想看过程的话,直接看文章最后的正式源码 作业需求及分析: 流程图 https://www.processon.com/diagraming/580c5276e4b03c844a5a9716 初期感 ...
- Appium+python自动化
名称 链接地址 Appium+python自动化8-Appium Python API(上) http://mp.weixin.qq.com/s/WvpT5oRrYY22avI95FuypQ Appi ...
- Python安装、配置图文详解(转载)
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境(I ...
- 【和我一起学python吧】Python安装、配置图文详解
Python安装.配置图文详解 目录: 一. Python简介 二. 安装python 1. 在windows下安装 2. 在Linux下安装 三. 在windows下配置python集成开发环境( ...
- Appium+python自动化8-Appium Python API
Appium+python自动化8-AppiumPython API 前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...
- appium+python自动化61-中文输入乱码问题解决
前言 在夜神模拟器上输入中文,发现是乱码,将unicodeKeyboard和resetKeyboard参数设置为True了,发现还是没法解决. 打开手机设置语言和输入法,发现找不到Appium And ...
随机推荐
- 高效并发一 Java内存模型与Java线程(绝对干货)
高效并发一 Java内存模型与Java线程 本篇文章,首先了解虚拟机Java 内存模型的结构及操作,然后讲解原子性,可见性,有序性在 Java 内存模型中的体现,最后介绍先行发生原则的规则和使用. 在 ...
- Linux查看系统当前登录用户的命令,top命令看到users有多个用户登录
Linux查看系统当前登录用户的命令,top命令看到users有多个用户登录 作为系统管理员,top命令看到users有多个用户登录,会需要查看下是否被黑客进入了. 实战例子:top命令:top - ...
- 带你理解Xcode Derived Data
什么是Xcode Derived Data?为什么它很重要呢? “Clean derived data”,当你遇到一些极其奇怪的构建问题时,你也许经常听到这句话. Derived Data是一个文件夹 ...
- 获取mac地址和扫描端口
获取IP mac地址 arp -a 10.0.0.34 扫描指定IP 1到30000端口 nmap -p1-30000 10.0.0.36
- LGBMClassifier参数
本文链接:https://blog.csdn.net/starmoth/article/details/845867091.boosting_type=‘gbdt’# 提升树的类型 gbdt,dart ...
- ArrayList对象声明& arrayList.size()
此程序用于测试 :每次for循环内重新定义一个Integer数组,赋值后加入arrayList.由于下一次的Integer对象重新定义,原来的对象是否会被释放? 解答:不会,因为原对象仍被引用(被ar ...
- day35_8_19 数据库
一.存储引擎 不同的数据应该有不同的处理机制 MySQL中也有不同的存储引擎: 1.InnoDB MySQL默认的存储引擎. innoDB比myisam存储数据要安全. innoDB支持事务. inn ...
- 残差residual VS 误差 error
https://blog.csdn.net/jmydream/article/details/8764869 In statistics and optimization, statistical e ...
- Taro/微信小程序解析XML
npm i xmldom PS: https://www.npmjs.com/package/xmldom https://blog.csdn.net/caojie1008/article/detai ...
- 3.Vue的基本语法
1.v-bind 可简写为":" 你看到的 v-bind 等被称为指令.指令带有前缀 v-,以表示它们是 Vue 提供的特殊特性. 我们可以使用 v-bind 来绑定元素特性! 在 ...