macaca搭建
对于新鲜的事务总是那么好奇,在自动化的过程中,有幸了解到macaca,记录下安装过程,具体介绍请移步官网:https://github.com/macacajs/
python版本参考:https://testerhome.com/topics/7898 详细教程
第一步:安装node.js 下载地址:https://nodejs.org/en/ 我本人下载的是8.11.1,一键安装,一路next就好,安装好之后添加环境变量,以便备用
第二步:切换淘宝源 npm install -g cnpm --registry=https://registry.npm.taobao.org 国内源很慢,切换过程耐心等待
安装成功:
第三步:通过淘宝源安装 macaca-cli cnpm i macaca-cli -g
第四步:安装 webdriver-client cnpm install webdriver-client
第五步:安装 macaca-electron cnpm install macaca-electron -g
第六步:安装 macaca-chrome cnpm install macaca-chrome -g
第七步:安装python API (这一步我直接通过pip安装的,应该也是没毛病的)
python3 -m pip install wd
第八步:安装谷歌驱动 macaca-chromedriver cnpm install macaca-chromedriver -g
第九步:安装Android驱动 cnpm install macaca-android -g (八,九,十可以根据需求安装)
第十步:安装iOS驱动 cnpm i macaca-ios -g
启动:macaca server --verbose 【加--verbose,打印详细日志】
- python tests/macaca-desktop-sample.test.py 【运行测试】
常用命令:
服务端
- macaca server (正常模式)
- macaca server -p 3456 (设置端口)
- macaca server -p 3456 & (设置端口后台运行)
- macaca server --verbose(输出详细日志)
测试
- macaca run (运行当前目录用例集)
- macaca run -d ./test (运行指定目录下用例集)
检查
- macaca doctor (环境检查)
丢一个官方用法
import unittest from macaca import WebDriver desired_caps = { 'platformName': 'Desktop', // iOS, Android, Desktop 'browserName': 'Chrome' // Chrome, Electron 'app': 'path/to/app' // Only for mobile } server_url = { 'hostname': '127.0.0.1', '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_get_url(self): self.driver.get('https://www.google.com') self.assertEqual(self.driver.title, 'Google') def test_search_macaca(self): self.driver \ .element_by_id("lst-ib") \ .send_keys("macaca") \ self.driver \ .element_by_name("btnK") \ .click() html = self.driver.source self.assertTrue('macaca' in html) if __name__ == '__main__': unittest.main()