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 ...
随机推荐
- webpack4 babel 篇
demo 代码点此,如果对 babel 不熟,可以看一下babel 7 简单指北. webpack 使用 babel 来打包使用 es6 及以上语法的 js 文件是非常方便的,可以通过配置,将 es6 ...
- es6中find方法
find() 方法返回数组中满足提供的测试函数的第一个元素的值.否则返回 undefined. , , , , ]; var found = array1.find(function(element) ...
- Android内部存储与外部存储的文件操作类
public class SDCardHelper { // 判断SD卡是否被挂载 public static boolean isSDCardMounted() { // return Enviro ...
- leetcode之求众数
求众数 给定一个大小为 n 的数组,找到其中的众数. 你可以假设数组是非空的,并且给定的数组总是存在众数. 示例 1: 输入: [3,2,3] 输出: 3 示例 2: 输入: [2,2,1,1,1,2 ...
- CnetOS6.7编译安装MariaDB
--安装所需软件包 [root@localhost mariadb-10.1.14]# yum install bison bison-devel ncurses libxml2 libxml2-de ...
- pytest生成allure报告
在pytest框架中可以用很多插件来生成测试报告,本文总结下怎么生成allure报告 allure allure是一款开源的,专门用来展示测试结果的一个工具,allure可以与很多的测试框架做集成,比 ...
- Rust第一次---centos 7下的安装,配置,测试
现在安装都依赖于网络,命令比较简单. 一,运行脚本,安装runstup 1,运行如下脚本: curl https://sh.rustup.rs -sSf | sh 2,输入默认项1,完成余下的安装 二 ...
- css 文本属性和字体属性
1.将浮动居中 这需要三个盒子 <!DOCTYPE html> <html lang="en"> <head> <meta charset ...
- Qt工程管理
Qt Creator工程管理Qt Creator以工程项目的方式对源码进行管理一个Qt Creator工程包含不同类型的文件 .pro项目描述文件.pro.user用户配置描述文件 //由Qt Cre ...
- 201871020225-牟星源《面向对象程序设计(java)》第十五周学习总结
201871020225-牟星源<面向对象程序设计(java)>第十五周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...