环境配置:
1、配置 Java 环境【必须】
2、配置 Android SDK【必须】(系统环境变量 path 中,加入 platforms、platform-tools、tools 路径)(SDK\platform-tools 中必须创建模拟器)(我使用的 SDK 是项目组 Android 开发人员给的,达到 24G,里面有很多东西)
3、Macaca 由 Node.js 开发,所以需要安装 Node.js【必须】
4、安装 macaca-client【必须】:首先切换切换淘宝源,因为国外资源访问很慢,而且有些资源还无法下载。
cmd 命令行先输入 npm install -g cnpm --registry=https://registry.npm.taobao.org
再输入 cnpm i macaca-cli -g
5、至此,命令行输入 macaca doctor,查看环境配置情况,再按需求,继续配置环境
6、安装 webdriver-client【必须】:cmd 命令行输入 cnpm install webdriver-client
7、安装 并配置 Ant【必须】(到官网下载包,然后解压,添加环境变量)(可以参考:http://www.cnblogs.com/yuzhongwusan/archive/2013/03/26/2982411.html)
8、命令行输入 macaca doctor,发现 Installed driver list 为空,安装 Android driver【必须】,命令行输入 npm i macaca-android --save
此处,我尝试了多次,在 win7 上安装失败,安装 log 提示 “android unicode” 有问题,然后仔细看了下安装 log 看到说,platforms 下面的 android-N 有问题,因此我就把 Android SDK 中 platforms 下的 android-N 文件夹删除,然后再输入命令,终于安装成功了,当时,我激动的流下了高兴的眼泪。。。安装成功时,如下图
9、再安装 macaca-electron,我不知道这是什么,反正必须要安装就是了,命令行输入 cnpm install macaca-electron -g
10、命令行再次输入 macaca doctor,终于看到希望了,如下图
==============================================================================================
革命尚未成功,同志仍需努力!!!
说明:python,我使用的是 2.7.9
1、安装 wd.py 包,命令行输入 pip install wd
2、pycharm 中,新建 1 个 test.py 文件,代码如下:
import unittest
import os
import time
from macaca import WebDriver
desired_caps = {
'platformName': 'android',
#'app': 'F:\\02_PhoneTesting\\Macaca\\macaca-test-sample-master\\app\\android-app-bootstrap.zip',
'app': 'C:\\Killer-Android-release-test.apk', # apk 在自己PC电脑上的存放路径
'reuse': 3
}
server_url = {
'hostname': 'localhost',
'port': 3456
}
class MacacaTest(unittest.TestCase):
@classmethod
def setUpClass(cls):
cls.driver = WebDriver(desired_caps, server_url)
cls.driver.init()
@classmethod
def tearDownClass(cls):
cls.driver.quit()
def test_01_login(self):
# 输入登录账号
self.driver.element('id','com.mpr.mprepubreader:id/login_account').send_keys('13168731111')
# 输入登录密码
self.driver \
.element_by_id('com.mpr.mprepubreader:id/login_password_edit')\
.send_keys('123456')
# 点击登录按钮
self.driver \
.element_by_id('com.mpr.mprepubreader:id/login_btn_bg_btn') \
.click()
if __name__ == '__main__':
unittest.main()
3、启动 Genimotion 中,配置好的 1 个模拟器,我的是 Samsung Galaxy S4,此处连接真机,应该也是可以的(我还没来得及尝试):
4、命令行输入 macaca server,启动服务,如下图所示:
5、pycharm 中,运行 test.py(注意光标放在 main 里面,再运行),运行成功,部分截图如下:
==============================================================================================
总结:
1、看官网文档,认真看,仔细看
https://github.com/macacajs/macaca-test-sample-python
https://macacajs.com/macaca/python.html
2、win 配置环境,坑超级超级多,所以必须要,耐心,耐心,耐心。
3、Good Luck