二,夜神模拟器
1,下载、安装
1.1,下载。官网下载地址:https://www.yeshen.com/
1.2,安装。可自定义安装路径,过程简单。安装完成后电脑桌面会出现两个快捷方式,如下:
打开夜神模拟器,界面如下。默认是横屏,点击图中1、2可切换成竖屏。
1.3,设置。关闭夜神模拟器,打开夜神多开器,可以对模拟器进行设置,点击如下设置按钮。
进入设置页面,可进行相应的设置,如下图是我的设置。
在夜神多开器里,还可以如下选择android版本安装更多的模拟器。
夜神多开器更多的功能不赘述。
2,获取模拟器的设备id
2.1,电脑安装Android SDK并配置好环境变量,没有安装的话可以查看博客appium环境搭建。
2.2,打开模拟器,输入命令adb devices,会发现找不到连接的模拟器设备。
2.3,这个时候,首先要确认SDK与夜神模拟器的adb版本是否一致,不一致则需替换成一致。
Android SDK的adb版本,输入命令:adb version
cd进入夜神模拟器安装路径的bin,输入命令nox_adb version查看
显然SDK中的adb版本更高,需要替换成一样的版本(选择更高的版本)。
替换方法:删除夜神模拟器安装路径中bin文件夹里的nox_adb.exe,再将Android SDK里的adb.exe复制到夜神模拟器安装路径的bin文件夹中,重命名为nox_adb。
2.4,替换完成后,重新打开模拟器,且重新打开cmd命令窗,再次输入命令adb devices,查看设备id成功。如下:
3,安装APP
将下载好的apk文件拖动到模拟器界面,即进行安装。也可以在其自带的游戏中心APP里面搜索应用安装。
4,python+appium启动夜神模拟器中的APP
4.1,获取夜神模模拟器的设备信息,以及被测app的信息(以今日头条APP为例)。获取方法跟博客appium连接真机启动app中第二部分的方法一样。
4.2,根据获取到的参数信息,编写示例脚本如下:
# -*- coding:utf-8 -*- # @author: 给你一页白纸 from appium import webdriver desired_caps = { "platformName": "Android", "platformVersion": "7.1.2", "deviceName": "VOG_AL10", "appPackage": "com.ss.android.article.news", "appActivity": ".activity.MainActivity", "unicodeKeyboard": True, "resetKeyboard": True, "noReset": True, } # 启动app driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
启动appium服务,再运行脚本,可以看到今日头条app被启动。
三,总结
1,Genymotion的缺点
1.1,Genymotion支持到了Android 10版本的模拟器,但因为暂时只找到了支持Android 8.0的Genymotion-ARM-Translation,所以可用的也就只到Android 8.0,有兴趣的可以去网上查找支持更高版本的ARM转换工具。
1.2,Genymotion模拟器安装应用市场的app,打开后会出现闪退,而且几乎是所有的APP。
2,夜神模拟器的缺点
2.1,夜神模拟器暂时最高只有Android 7的版本,但现在的Android手机基本都是Android 9以上的版本。
综上,可以根据自己的喜好与方便程度选择,脚本调试的时候可能使用模拟器方便一点,但实际自动化测试过程中还是推荐使用真机,使用真机请参考博客appium连接真机启动app。