首页 > 编程知识 正文

mac macaca android在Mac下配置Macaca环境,linux下配置java环境

时间:2023-05-04 17:24:48 阅读:255056 作者:3021

Macaca依赖的功能模块非常多,安装过程很复杂,不过这是目前所有自动化测试框架的通病。

Node.js

请安装Node.jsv6.0或者更高版本,装好Node.js后命令行里就已经集成npm工具。

默认情况下,npm命令下载的全局模块会存放在系统目录下,这会导致后续操作有很多坑,因此,需要修改默认的全局模块(node_global)的存放路径以及缓存(global_cache)的路径。

在用户目录下新建node_modules文件夹,在下面建立node_global及node_cache两个文件夹,修改默认全局路径:

$ npm config set prefix "/Users/[用户名]/node_modules/node_global"

$ npm config set cache "/Users/[用户名]/node_modules/node_cache"

配置Node环境变量,让系统识别npm下载的全局模块:

$ vim ~/.bash_profile

[按下i,显示insert,进入输入模式,输入如下配置]

NODE_HOME="/Users/[用户名]/node_modules/node_global"

export PATH="$NODE_HOME/ajdll:$PATH"

export NODE_HOME

[按esc,输入:wq!保存]

$ source ~/.bash_profile

$ echo $NODE_HOME

Android 环境

安装JDK1.8,并配置Java环境变量:

$ /usr/libexec/java_home

[保存得到JAVA_HOME的路径]

$ vim ~/.bash_profile

[按下i,显示insert,进入输入模式,输入如下配置]

JAVA_HOME="[JAVA_HOME的路径]"

CLASS_PATH="$JAVA_HOME/lib"

export PATH="$JAVA_HOME/ajdll:$PATH"

export JAVA_HOME

[按esc,输入:wq!保存]

$ source ~/.bash_profile

$ echo $JAVA_HOME

安装18-25版本中的任一SDK和Android Support Repository,并配置Android环境变量:

$ vim ~/.bash_profile

[按下i,显示insert,进入输入模式,输入如下配置]

ANDROID_HOME="[ANDROID_HOME的路径]"

export PATH="$ANDROID_HOME/tools:$PATH"

export PATH="$ANDROID_HOME/platform-tools:$PATH"

export PATH="$ANDROID_HOME/emulator:$PATH"

export ANDROID_HOME

[按esc,输入:wq!保存]

$ source ~/.bash_profile

$ echo $ANDROID_HOME

运行android测试用例前要配置Gradle环境变量:

$ vim ~/.bash_profile

[按下i,显示insert,进入输入模式,输入如下配置]

GRADLE_HOME="[GRADLE_HOME的路径]"

export PATH="$GRADLE_HOME/ajdll:$PATH"

export GRADLE_HOME

[按esc,输入:wq!保存]

$ source ~/.bash_profile

$ echo $GRADLE_HOME

iOS 环境

下载Xcode8.3或者更高版本,安装Homebrew(一款常用的 MacOS 的包管理器)以使用brew命令。

安装usbmuxd以便于通过USB通道测试iOS真机:

$brew install usbmuxd

安装ideviceinstaller、ios-deploy用来给真机安装App:

$brew install ideviceinstaller

$brew install ios-deploy

装ios-webkit-debug-proxy以便于测试App中的WebView:

$ brew install ios-webkit-debug-proxy

安装carthage来构建Macaca XCTestWD:

$brew install carthage

Macaca环境配置

安装Macaca命令行工具:

$ npm i -g macaca-cli

安装不同的驱动以适应不同平台的支持:

$ npm i macaca-ios -g

$ npm i macaca-android -g

$ npm i macaca-electron -g

$ npm i macaca-chromedriver -g

检查当前Macaca的安装环境是否配置成功:

$macaca doctor

Python环境配置

因为使用python语言开发,所以需要先安装python的开发环境。Mac已经有了Python 2.x,所以就不用再安装了,不过为了以后方便,可以再安装一个python3:

xcode-select --install

[查看已有的python2.7版本]

$python --version

[利用homebrew搜索python3]

$brew search python

$brew install python3

安装完成后可以在/usr/local/Cellar/下看到python3的文件夹,接下来就检查一下刚刚安装的python3与系统的python路径:

$which python

$which python3

现在只需要下载安装unittest等一些Macaca所需的模块即可:

$sudo pip install [unittest2的whl文件]

$[输入密码]

$sudo pip install wd

然后,为了方便开发,可以下载PyCharm社区版来开发python项目。

执行官方示例

将官方示例sample-python克隆到本地:

$git clone https://github.com/macaca-sample/sample-python.git --depth=1

$pip install -r requirements.txt

先启动服务器,添加了--verbose可以看到详细的信息,添加-p 3456可以设置端口号:

$ macaca server --verbose

分别执行不同平台的测试用例:

$ python tests/macaca-desktop-sample.test.py

$ python tests/macaca-ios-sample.test.py

$ python tests/macaca-android-sample.test.py

如果是使用PyCharm执行测试用例,一旦导入unittest模块,PyCharm就会自动识别以unittest的模式去运行。若是想以python直接执行的模式运行,点开右上角的“Edit Configurations”,再点左上角的+号,选择Python,在右方的配置中选择要执行的用例文件即可。

如果在执行Android用例时,在真机上很顺利,但到了模拟器上,到打开百度网页那里就报错Error: chromedriver proxy error with: Error: connect ECONNREFUSED。原因是模拟器里的浏览器版本和本机macaca内置的chromedriver的对应关系问题,具体查看Android的Webview版本问题,换api19–23之间模拟器一般就可以了。

特别要注意的是,官方示例无法在api22以下的Android系统中执行。

iOS真机调试前需要重签名XCTestWD.xcodeproj,Xcode项目所在路径:xxx/node_modules/macaca-ios/node_modules/xctestwd/XCTestWD.xcodeproj,双击打开Xcode项目,重签名XCTestWD和XCTestWDUITests,并能正常执行即可。如果是个人开发者,iOS上要在“设置>通用>设备管理”中信任开发者。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。