美文网首页自动化测试
搭建appium+mumu模拟器 手机自动化测试环境

搭建appium+mumu模拟器 手机自动化测试环境

作者: 数据运营python | 来源:发表于2018-10-29 17:11 被阅读6次

手机操作的动作比较繁琐,作为一个程序猿,本着能自动化,就不会用手动的方式,基于目前的资源情况,手上没有多余的手机进行测试,安卓本身自带的虚拟机性能比较差,就想通过mumu模拟器进行手机的自动化操作。

1 基本环境安装

1.1 java

在控制台输入:java -version
出现下面的内容就安装成功

java -version

java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)

1.2 安卓的sdk

1.2.1 设置ANDROID_HOME的环境变量
1.2.2 path添加两个变量,将以下箭头所指的两个文件路径添加到path
image.png
1.2.3 在命令行里面输入:adb devices,显示如下,就表示成功:
List of devices attached

1.3 安装node

在控制台输入:node -v 显示如下,表示成功

v10.12.0

1.4 安装appium

直接安装后,打开显示如下,如果直接安装不了,在控制台里面输入进行安装,打开后显示如下,表示安装成

image.png

1.5 python环境

安装后在控制输入python后,显示如下,表示成功:

C:\Users\dell>python
Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

1.6 Appium-Python-Client

直接用:pip install Appium-Python-Client 进行安装

1.7 mumu模拟器

直接下载安装就可以

2 在模拟器自动启动qq

启动的代码如下,下面会详细讲解每个参数是怎么来的

desired_caps = {
                    'platformName': 'Android',
                    'deviceName': '127.0.0.1:7555',
                    'platformVersion': '4.4.4',
                    # apk包名
                    'appPackage': 'com.tencent.mobileqq',
                    # apk的launcherActivity
                    'appActivity': 'com.tencent.mobileqq.activity.SplashActivity'
                    }
    driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

2.1 platformName

由于我们是连接安卓的虚拟机,直接填写:Android

2.2 deviceName

2.2.1 连接mumu虚拟机

这个是设备名称,因为我们是通过安卓的adb连接虚拟机的,需要在控制台执行如下的命令,让adb连接上虚拟机:

adb connect 127.0.0.1:7555

7555 的端口是在mumu模拟器的安装目录:emulator\nemu\vms\myandrovm_vbox86 下面的myandrovm_vbox86.nemu文件里面配置的,具体的配置如下图


image.png
2.2.1 获取deviceName

执行了上面的连接模拟器的命令后,在cmd控制台输入:adb devices,查看目前连接的虚拟机,显示如下,图片里面的"127.0.0.1:7555" 就是设备的名称

List of devices attached
127.0.0.1:7555  device

2.3 platformVersion

直接在mumu虚拟机里面的“设置”-->"关于平板电脑" 里面有显示安卓的版本


image.png

2.4 appPackage,appActivity

这两个表示我们需求启动的app的信息,由于我已经在mumu模拟器里面安装了qq程序,所以是通过这种方式进行启动程序,如果是没有安装的可以通过"app"属性指定要安装的程序的位置。
可以通过安卓的sdk目录下:android-sdk\build-tools\28.0.3\ 的aapt.exe这个可以获取我们要的数据。截取部分的内容如下,其中的package里面对应的name属性的指就是appPackage要填写的指

D:\test_apk>aapt dump badging mobileqq_android.apk
package: name='com.tencent.mobileqq' versionCode='936' versionName='7.8.5'
install-location:'auto'
sdkVersion:'15'
targetSdkVersion:'25'

往下面点继续看,有如下的信息,launchable-activity对应的name属性的值就是appActivity需要填写的指

uses-library-not-required:'com.sec.android.app.multiwindow'
launchable-activity: name='com.tencent.mobileqq.activity.SplashActivity'  label='QQ' icon=''
uses-library-not-required:'com.google.android.media.effects'
uses-library-not-required:'com.motorola.hardware.frontcamera'

2.5 连接appium 127.0.0.1:4723

对应的地址,端口是appium启动的时候,填写的地址,端口,如下图


image.png

3. 启动

根据前面的环境配置,操作后,运行脚本,在虚拟机里面可以启动qq,并且看到虚拟机里面多了如下两个图标,就表示成功。

image.png

关注公众号

image.png

相关文章

网友评论

    本文标题:搭建appium+mumu模拟器 手机自动化测试环境

    本文链接:https://www.haomeiwen.com/subject/zqbbtqtx.html