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()
macaca搭建的更多相关文章
- [ZZ] [精彩盘点] TesterHome 社区 2018年 度精华帖
原文地址: https://testerhome.com/topics/17646 相逢即是缘分,总有一篇适合您! 感觉好的请点赞收藏 ,感觉分类不严谨的,欢迎反馈给我! 测试方法&测试管理 ...
- macaca 环境搭建篇,(web 和安卓)
appium研究一段时间,感觉appium太不稳定了, 后来听说了阿里开源了macaca,那么我就想尝尝鲜,啥都不说,我感觉还是赶紧上手搭建环境吧. macaca介绍: Macaca是一套完整的自动化 ...
- iOS自动化环境搭建——macaca
macaca-java for ios 自动化环境搭建 基础原理解析:https://testerhome.com/topics/6608 一.环境搭建 1.安装eclipse; -----Java开 ...
- macaca环境搭建(web 和 android)
一.安装配置JDK 1.1下载JDK地址http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.h ...
- Macaca环境搭建踩坑总结
1.使用命令 npm i macaca-android -g 安装一直不成功,使用Macaca doctor 一直没有显示出android C:\Users\ABC>npm i macaca- ...
- Macaca环境搭建全教程
首先想要会Macaca,还得先会用github,不然你得死……因为各种例子都在git上,官网也一样,蛋疼的很…… #基础环境 1.JDK:jdk1.8-配置变量 2.Android SDK:sdk ...
- 自动化测试===Macaca环境搭建,自我总结
安装jdk 安装安卓sdk(打开sdk的时候出现问题linux===启动sdk manager下载配置sdk的时候报错的解决办法) 安装gradle,配置环境变量(MACACA===gradle下载和 ...
- Macaca环境搭建(四)----mac系统macaca安装
一.安装Homebrew 命令:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/insta ...
- Macaca环境搭建(三)----uirecorder Android录制
一.安装Macaca-Android 命令窗口输入:npm i macaca-android -g 二.安装android-SDK 1.下载并安装ADT-bundle,官网下载地址我就不提供了,因为下 ...
随机推荐
- kill的各种讯号?
kill 程序 不仅仅只是k掉某个进程, 她还有很多作用和用途. 其实, 这也是linux的程序的一个特点: 一个程序(很多是 命令行的程序), 除了主要的作用外, 还有很多" 重要的, 有 ...
- Vue实现音乐播放器(七):轮播图组件(二)
轮播图组件 <template> <div class="slider" ref="slider"> <div class=&qu ...
- 小程序框架MpVue踩坑日记(二)
数据嵌套超过三层或者等于三层的时候 父组件传值给子组件后,如果子组件内的值需要改变 通过this.emit()传值后,父组件的值虽然会改变,但是视图并不会重新渲染 原因就是数据嵌套太多,没有触发ren ...
- cookie/http/https
今天再学习顺便外加复习下http的相关知识,顺便试试在笔记中导出一个长篇的图片回事怎么样的效果. HTTP相关知识,不是很全仅供参考
- 实验报告2&&第四周课程总结
实验报告: 写一个名为Rectangle的类表示矩形.其属性包括宽width.高height和颜色color,width和height都是double型的,而color则是String类型的.要求该类 ...
- SpringBoot(十) -- Spring Data
一.Spring Data简介 Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问技术,包括非关系数据库.Map-Reduce 框架.云数据服务等等:另外也包含对关 ...
- Java-多线程第四篇线程池
1.什么是线程池. 线程池在系统启动的时候即创建大量的空闲的线程,程序将一个Runnable对象或者Callable对象传给线程池,线程池就会启动一个线程来执行它们的run()或者call()方法,当 ...
- poj-2289.jamies contact groups(二分答案 + 二分多重匹配)
Jamie's Contact Groups Time Limit: 7000MS Memory Limit: 65536K Total Submissions: 9227 Accepted: ...
- A*(A_star)搜索总结
\(A^*(A star)\)搜索总结 标签:算法--搜索 阅读体验:https://zybuluo.com/Junlier/note/1299772 定义 先复制一则定义 \(A^*\)算法在人工智 ...
- weight (搜索对象的选取)
#10249. 「一本通 1.3 例 5」weight [题目描述] 已知原数列 $a_1,a_2,\cdots,a_n$ 中的前 1项,前 2 项,前3项, $\cdots$ ,前 n 项的和, ...