win7 上搭建macaca+python+android环境

实验 系统 : Win7 旗舰版Sp1 64位操作系统 

所需软件

python3.6.2  (略)

jdk8 [略]

node-v6.11.3-x64.msi  下载地址:https://nodejs.org/dist/v6.11.3/node-v6.11.3-x64.msi

adt-bundle-windows-x86-20140321.zip    SDK下载地址:http://developer.android.com/sdk/index.html

 genymotion 下载地址:http://dl.genymotion.com/dists/6.0.0/ova/genymotion_vbox86p_6.0_170320_193253.ova

Genymotion-ARM-Translation  下载地址:http://download.csdn.net/download/fengyuzhengfan/9694957



1.1 安装配置Oracle java


配置java 环境变量:
JAVA_HOME 变量值为JDK的安装目录,笔者为C:\Program Files\Java\jdk1.8.0_121
PATH PATH变量值后追加 ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
CLASSPATH 变量值为 ;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;

检查是否安装成功

C:\Users\cmd>java -version
java version "1.8.0_121"
Java(TM) SE Runtime Environment (build 1.8.0_121-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.121-b13, mixed mode)

1.2 安装配置Android SDK

下载地址 http://tools.android-studio.org/index.php/sdk 处下载 android-sdk_r24.4.1-windows.zip
将android-sdk-windows解压到你需要的目录下,笔者是D:\Android\android-sdk-windows

配置android-sdk环境变量:
ANDROID_HOME 变量值为android-sdk的解压目录,笔者为D:\Android\android-sdk-windows
PATH PATH变量值的最后追加 ;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\build-tools;

参考:https://testerhome.com/topics/10056


1.3安装配置nodejs

1.3.1 安装nodejs

去官网 https://nodejs.org/en/ 下载 v6.10.0 LTS 这个稳定版本,也就是node-v6.10.0-x64.msi这个。
然后安装到本地 D:\nodejs(
重点说明:不要缺省目录,否则会带空格
刚安装完是这样的版本

 C:\Users\cmd>node -v
v6.10.0

C:\Users\cmd>npm -v
3.10.10

1.3.2 添加PATH环境变量

追加到PATH之后便可以了,D:\nodejs;D:\nodejs\node-global  【并确保 用户变量中,没有指定npm环境带空格的路径

1.3.3 nodejs的配置设置

去D:\nodejs\目录下,新建 node-global 和 node-cache。先看下 如果已经有了 就不用再新建了。

修改文件:\nodejs\node_modules\npm\npmrc
prefix = d:\nodejs\node_global
cache = d:\nodejs\node_cache

或者如下设置:


C:\Users\cmd>npm config set prefix "D:\nodejs\node-global"
C:\Users\cmd>npm config set cache "D:\nodejs\node-cache"

检查下是否设置成功

C:\Users\cmd>npm config get prefix
     D:\nodejs\node-global
C:\Users\cmd>npm config get cache
      D:\nodejs\node-cache

再检查下安装源,我应该所有的安装源都是taobao.org,安装源有问题的话

 npm config set  registry http://registry.npm.taobao.org
C:\Users\cmd>npm config get registry
     http://registry.npm.taobao.org

PS: 推荐尽量用国内的淘宝镜像源,因为你懂得的原因某些组件需要国外服务器下载,下载会失败导致macaca相关安装失败。

1.4 安装配置gradle

macaca最新的采用了gradle来构建和部署(以前有依赖Apache ant构建)。所以我们需要安装配置gradle。
详见官方帮助 https://gradle.org/install 来部署安装好gradle。【解压,设置path即可】


C: \U sers \c md>gradle -v

1.5 安装macaca相关

然后就是安装macaca-cli 和各种macaca驱动
npm i macaca-cli -g
npm i macaca-electron -g
npm i macaca-chrome -g
npm i macaca-android -g

【如果需要重装则先卸载,管理员权限执行。 npm uninstall macaca-android -g; npm cache clean】

如果报错如:throw er; // Unhandled 'error' event。 则切换到目录执行 D:\nodejs\node_modules\npm 

npm install chromedriver --chromedriver_cdnurl=http://cdn.npm.taobao.org/dist/chromedriver

最后 macaca doctor检查环境ok后,

npm i app-inspector -g


2.2 安装Macaca Python Client

地址 https://pypi.python.org/pypi/wd 也可如下命令安装

D:\macaca\sample-python\tests>python -m pip install wd
启动:macaca server -p 3456 --verbose

测试:

from macaca import WebDriver
desired_caps = {
    'platformName': 'android',
    'app': 'D:\\sasp.apk',
    'reuse': 3
}

server_url = {
    'hostname': 'localhost',
    'port': 3456
}
if __name__ == '__main__':
    driver = WebDriver(desired_caps,server_url)
    print('000')
    driver.init()
    print('aaa')
    # unittest.main()
    driver.quit()

问题收集:

1,出现过push app失败,目录不存在。是因为windows上目录 application data 带有空格。(安装、配置好nodejs)

2,错误INSTALL_FAILED_CPU_ABI_INCOMPATIBLE解决办法,安装

Genymotion-ARM-Translation




3, 驱动安装屡次报错

$ npm install -g cnpm --registry=https://registry.npm.taobao.org
然后安装驱动,完美解决

然后利用cnpm 代替npm 。。。。








你可能感兴趣的:(app自动化测试)