为什么选择Mac做自动化测试?

  • 既可以做iOS端的测试也可以进行Android端测试
  • Mac运行效率相对于Win要高很多,可以真正发挥appium的功能

环境依赖

  • Node.js
  • Appium
  • Appium-desktop
  • Appium-doctor
  • Appium-Python-Client
  • Python
  • JDK
  • Android SDK

安装 Homebrew

终端输入:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

可以参考Homebrew中文文档

安装Node.js

brew install node

安装完成后输入如下命令:

node -v

npm -v

说明:

  • npm(node package manage)是node.js安装包管理工具,类似Python的pip工具
  • 由于npm源在国外,我们使用npm安装库时会比较慢,可以使用taobao的镜像源

    npm config set registry http://registry.npm.taobao.org

安装Appium Server

安装最新版本(安装时间较长,请耐心等待)

npm install -g appium

也可以安装指定版本

npm install appium@1.7.2 -g

安装完成后输入如下命令:

appium -v

启动appium server:

终端输入appium

退出appium server:

终端输入control + C

说明:

  • npm的包安装分为本地安装(local)、全局安装(global)两种,一般我们推荐使用全局安装

配置Python环境

安装Python多版本管理工具

输入如下命令:

curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

配置pyenv环境变量:

# pyenv
export PATH="/Users/xxx/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"

pyenv基本命令:

pyenv versions # 查看虚拟环境Python版本
pyenv install -l # 列出所有可安装的Python版本
pyenv install 3.7.3 # 安装3.7.3版本的Python
pyenv global 3.7.3 # 设置全局Python版本为3.7.3
pyenv uninstall 3.7.0 # 删除3.7.0版本

pyenv优点:

  • 多版本并存
  • 方便管理和灵活切换不同Python版本

注意:

  • 安装过程中可能会报错[install] Error 1 zipimport.ZipImportError安装失败

    终端直接输入:sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target / 重新进行安装
  • 不同版本Python都会安装到目录/用户/xxxx/.pyenv/versions/

安装Appium-Python-Client

pip3 install Appium-Python-Client

安装Appium desktop

https://github.com/appium/appium-desktop/releases

安装JDK

https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

验证:

java -version

安装SDK

http://sdk.android-studio.org

配置sdk环境变量:

# sdk
export ANDROID_HOME="/Users/xxx/workspace/android-sdk"
PATH=$PATH:$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin
export PATH

环境立即生效:

source ~/.bash_profile

验证:

adb version

安装appium-doctor

appium-doctor可以检测Appium整体依赖环境配置情况

npm install -g appium-doctor

验证环境:

appium-doctor


感谢阅览本文

转载请注明出处

Appium环境搭建(Mac)的更多相关文章

  1. Mac Appium环境搭建

    安装brew ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)" 安装java brew install ...

  2. Appium环境搭建(win/mac)

    课程使用Windows+Android虚拟机, 建议使用Windows系统学习课程, 如使用Mac系统, 请另外准备一台Andorid手机 Windows系统Appium环境搭建 安装JDK并配置环境 ...

  3. RF+Appium框架自动化测试系列一之(Mac下Appium环境搭建)万事开头难

    消失了3个月,有一段时间没来园子更新博客了,各位看官见谅哈哈,消失是因为刚换了工作环境没外网,好多笔记没能及时的记录分享,以后有时间慢慢补上吧,这段时间主要接触了移动端app的自动化测试,公司为了快速 ...

  4. Mac OS下Appium环境搭建及Genymotion模拟器安装

    说明:本机Mac本上已经安装的有:Python3.JDK.Node.js. Selenium Appium环境搭建 Step1:安装Appium Python Client库 1,命令:pip ins ...

  5. (干货分享)mac python+appium环境搭建

    因为mac本自带python2.x(不建议卸载,因为本本本身有很多依赖与此),所以装python3的过程极其坎坷,勉强装好后也总是各种报错.这次装appium环境,直接把原来的python3卸了,用h ...

  6. MAC平台基于Python的Appium环境搭建

    前言 最近笔者要为python+appium课程做准备,mac在2019年重新安装了一次系统,这次重新在mac下搭建appium环境,刚好顺带写个文稿给大家分享分享搭建过程. 一.环境和所需软件概述 ...

  7. Appium python自动化测试系列之appium环境搭建(二)

    ​2.1 基础环境搭建 当我们学习新的一项技术开始基本都是从环境搭建开始,本书除了第一章节也是的,如果你连最基础的环境都没有那么我们也没必要去说太多,大概介绍一下: 1.因为appium是支持andr ...

  8. 3.移动端自动化测试-appium环境搭建(原理)

    appium自动化原理: 需要服务端(appium启动),手机端(adb连接设备),脚本端(pycharm)就可以进行 自己总结下: 手机和脚本连接:1.adb连接,2靠脚本导入驱动. 脚本和服务端连 ...

  9. Robot framework + appium环境搭建

    Robot framework+appium环境搭建 首先梳理一下要用到的工具和安装包: 1. Android + JAVA. jdk : http://www.oracle.com/technetw ...

  10. (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10)

    (一)Hololens Unity 开发环境搭建(Mac BOOTCAMP WIN10) 系统要求 64位 Windows 10 除了家庭版的 都支持 ~ 64位CPU CPU至少是四核心以上~ 至少 ...

随机推荐

  1. [转帖]在 k8s 中自动为域名配置 https

    在 k8s 中自动为域名配置 https https://juejin.im/post/5db8d94be51d4529f73e2833 随着 web 的发展,https 对于现代网站来说是必不可少的 ...

  2. Microsoft的考验――查找第二大的数

    #include<stdio.h> int main() { int n,m,t,max,max1; scanf("%d",&n); while(n--) { ...

  3. Authorization源码解析

    1.首先调用 Subject.isPermitted*/hasRole* 接口,其会委托给SecurityManager.SecurityManager 接着会委托给 Authorizer: Auth ...

  4. treeMultiselect 去掉勾选项

    场景描述:弹窗,显示树形结构,节点层次可变(可只有一级节点,也可是多级节点),限制只能选择一个节点! 1.修改jquery.tree-multiselect.min.js 文件 2.前台页面 参考代码 ...

  5. 第一个.NET小程序

    一.用户需求 做一个简单的网页版销售合同签核系统 1.业务员需要在手机或者电脑上操作,Key入销售合同 2.业务员填入相应的合同信息,对应主管签核 3.最终签核完,生成PDF版的销售合同,且上面自动加 ...

  6. git便携版 添加git-bash到右键菜单

    注册表路径 HKEY_CLASSES_ROOT\Directory\Background\shell 新建项取名open in git 默认设置为右键显示的名称 Git Bash Here 新建字符串 ...

  7. Part_three:Redis持久化存储

    redis持久化存储 Redis是一种内存型数据库,一旦服务器进程退出,数据库的数据就会丢失,为了解决这个问题,Redis提供了两种持久化的方案,将内存中的数据保存到磁盘中,避免数据的丢失. 1.RD ...

  8. HTML Marquee跑马灯

    Marquee是html的标签,所有的主流浏览器都能兼容,用于创建文字滚动. 来介绍下标签的属性 滚动方向 direction <!--滚动方向 direction 4个值 up down le ...

  9. iptables-2基本语法结构

    1.规则的概念先说说规则的概念,然后再通俗的解释它.规则:根据指定的匹配条件来尝试匹配每个流经此处的报文,一旦匹配成功,则由规则后面指定的处理动作进行处理:那么我们来通俗的解释一下什么是iptable ...

  10. Linux学习django-CentOS部署自己本地的django项目

    前言 自己本地写好的django项目,如何部署到linux服务器上,让其他的小伙伴也能访问呢?本篇以centos系统为例,把本地写好的django项目部署到linux服务器上环境准备: 环境准备:1. ...