Mac+Appium+Python+Pycharm环境搭建
为什么优先选择Mac做自动化测试?
1、既可以做iOS端的测试也可以进行Android端测试
2、Mac运行效率相对于Win要高很多,可以真正发挥appium的功能
以下是在Mac上完整搭建过程
一、JDK和SDK的安装和配置
1、下载JDK http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2、JDK的默认安装路径是 /Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home/
3、环境变量配置(如何bash_profile已存在就不需要重新创建)
touch ~/.bash_profile
vim ~/.bash_profile
4、复制以下内容
# SET PATH FOR JDK1.8
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_161.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
5、:wq保存后使用source ~/.bash_profile使配置立即生效
6、可以echo $JAVA_HOME查看是否显示刚才配置的路径
7、下载SDK http://sdk.android-studio.org
8、同样要配置环境变量
# SDK PATH
ANDROID_HOME=/Users/songxiao/work/sdk
PATH=$ANDROID_HOME/platform-tools:$ANDROID_HOME/tools:$PATH:.
export ANDROID_HOME
export PATH
9、验证
java -version
adb version
android
二、安装HomeBrew(https://brew.sh/index_zh-cn)
1、终端输入
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2、#替换国内镜像源(可以不用,测试了下不替换也不慢)
①将brew文件下载到本地
cd ~ && curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install >> brew_install
②修改BREW_REPO和CORE_TAP_REPO
#!/System/Library/Frameworks/Ruby.framework/Versions/Current/usr/bin/ruby
# This script installs to /usr/local only. To install elsewhere you can just
# untar https://github.com/Homebrew/brew/tarball/master anywhere you like or
# change the value of HOMEBREW_PREFIX.
HOMEBREW_PREFIX = "/usr/local".freeze
HOMEBREW_REPOSITORY = "/usr/local/Homebrew".freeze
HOMEBREW_CACHE = "#{ENV["HOME"]}/Library/Caches/Homebrew".freeze
HOMEBREW_OLD_CACHE = "/Library/Caches/Homebrew".freeze #BREW_REPO = "https://github.com/Homebrew/brew".freeze
BREW_REPO = "git://mirrors.ustc.edu.cn/brew.git".freeze #CORE_TAP_REPO = "https://github.com/Homebrew/homebrew-core".freeze
CORE_TAP_REPO = "git://mirrors.ustc.edu.cn/homebrew-core.git".freeze
③执行安装
/usr/bin/ruby ~/brew_install
④添加路径
vim ~/.bash_profile
#添加/etc/local/bin到PATH
source ~/.bash_profile
⑤验证
brew doctor
三、安装Python3
brew install python3
brew会直接下载最新版本的python,python3默认安装路径:
/usr/local/Cellar/python/3.6.4_4/bin
python2默认安装路径:
/usr/local/Cellar/python@2/2.7.14_3/bin
1、配置Python环境变量
# SET PATH FOR PYTHON3
PATH="/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/bin:/usr/local/Cellar/python/3.6.4_4/bin:${PATH}"
export PATH
alias python="/usr/local/Cellar/python/3.6.4_4/Frameworks/Python.framework/Versions/3.6/bin/python3.6" # SET PATH FOR PYTHON2
#PATH="/usr/local/Cellar/python@2/2.7.14_3/bin:${PATH}"
#export PATH
四、安装node.js
brew install node
1、检查版本
node -v
2、安装npm
由于npm源在国外,我们使用npm安装库时会比较慢,可以使用taobao的镜像源
1 npm config set registry http://registry.npm.taobao.org
3、安装carthage
Carthage 是一个管理 iOS 开发库依赖的包
brew install carthage
4、下载&安装&配置appium server
npm install -g appium
5、安装appium-doctor
npm install -g appium-doctor
6、验证
appium-doctor

五、安装Appium-Python-Client(如何用pip3安装不上可以在脚本中alt+回车进行安装)
pip3 install Appium-Python-Client
六、下载Appium客户端
https://github.com/appium/appium-desktop/releases

备注:
命令行启动和关闭appium服务
启动服务
①终端--appium,如果需要root权限--sudo appium
②一些参数设置
appium -a 127.0.0.1 -p 4723 --session-override
-a:要监听的ip
-p:要监听的端口号
--session-override:覆盖之前的session
③实际工作中可能用的比较多的
appium -a 127.0.0.1 -p 4723 -bp 4724 -U device --session-override
-bp 是连接Android设备bootstrap的端口号,默认是4724
--chromedriver-port 是chromedriver运行需要指定的端口号,默认是9515
-U 是连接的设备名称,如"adb devices"获取的设备标识
关闭服务
①查看端口pid
lsof -i : 4723/sudo lsof -i : 4723/sudo lsof -i :3000 | grep LISTEN/sudo lsof -i tcp:3000 | grep LISTEN
②关闭服务
kill -9 pid/sudo kill -9 pid
-9:强制关闭
卸载Appium Server
①卸载命令
npm uninstall appium -g
②清理缓存
npm cache clean
以上:如果出现权限问题,一律命令前加sudo即可
作者原创,转载请注明出处,谢谢。
Mac+Appium+Python+Pycharm环境搭建的更多相关文章
- Mac&Appium&Python自动化测试-环境搭建之安卓SDK
一.摘要 本博文将详细讲述在Mac环境下的jdk安装.配置以及环境校验:安卓sdk安装.配置以及环境校验 二.安装包工具准备: jdk1.8.0(64 位) android-sdk_r24.4.1-m ...
- appium+python自动化☞环境搭建
前言:appium可以说是做app最火的一个自动化框架,它的主要优势是支持android和ios,另外脚本语言也是支持java和Python.略懂Python,所以接下来的教程是 appium+pyt ...
- web自动化一(selenium+python+pycharm环境搭建)
年前公司刚刚搭起了web自动化测试框架的环境,趁着过完年还没全部忘掉,准备把如何搭建环境的方法和大家分享下,有哪里不对的地方,请批评指正,共同进步,共勉! 为此我把搭建环境所需的软件打包上传到百度云, ...
- Appium+python自动化环境搭建(小白适用)
写在前面: 没开始搭建前听好多人说,学习appium80%的人都死于环境搭建,所以一开始很紧张,在搭建环境中也确实遇到了好几个问题,由于之前本人使用app测试经验很少,所以相当于app小白,因此有的问 ...
- Appium+python自动化-环境搭建
一.前言 本文是在windows10 X64系统下搭建appium,流程如下: 1.安装jdk1.8+python3.6 (64位) 2.安装node.js 3.安装Appium-desktop 4 ...
- Appium+python自动化环境搭建
一.步骤及环境 环境:Windows 7版本 64位系统(python) 1.jdk安装配置:jdk1.6.0 (64位) 2.android-sdk下载安装:android-sdk_r24.3.4- ...
- Appium+Python自动化环境搭建-1
前言 appium可以说是做app最火的一个自动化框架,它的主要优势是支持android和ios,另外脚本语言也是支持java和Python. 小编擅长Python,所以接下来的教程是appium+p ...
- Appium+python的环境搭建!
我的电脑64位操作系统 下载并安装所需软件: 1.adb环境 2.下载(python-2.7.12.amd64.msi)并安装python 3.下载并解压adt,如(adt-bundle-window ...
- python+pycharm环境搭建
1.下载python安装包 https://www.python.org/downloads/ 2.下载pycharm安装包. https://www.jetbrains.com/pycharm/do ...
随机推荐
- [转帖]运维必读:Linux 的内存分页管理
运维必读:Linux 的内存分页管理 https://cloud.tencent.com/developer/article/1356431 内存是计算机的主存储器.内存为进程开辟出进程空间,让进程在 ...
- python 之 数据库(多表查询之连接查询、子查询、pymysql模块的使用)
10.10 多表连接查询 10.101 内连接 把两张表有对应关系的记录连接成一张虚拟表 select * from emp,dep: #连接两张表的笛卡尔积 select * from emp,de ...
- Jmeter-后置处理器--json提取器
Token提取: 将token放入全局变量: 将token值设为全局变量,${__setProperty(newtoken,${token},)} 添加请求头部管理器作为全局使用,将变量token使 ...
- Python3遍历指定文件夹下所有文件及文件夹
采用os模块儿: import os def get_filelist(dir): for home, dirs, files in os.walk(dir): print("####### ...
- Go语言学习笔记(8)——包和结构体
包 —— 每个可执行的应用程序必须包含一个主函数,它是执行的入口点.主函数应该存在main包中. 结构体: 通过 . 操作符访问结构体的各个成员! 1. 定义结构体类型person: type per ...
- python装饰器无参及有参案例
装饰器无参和有参案例:
- Security Access Control Strategy && Method And Technology Research - 安全访问控制策略及其方法技术研究
1. 访问控制基本概念 访问控制是网络安全防范和客户端安全防御的重要基础策略,它的主要任务是保证资源不被非法使用.保证网络/客户端安全最重要的核心策略之一. 访问控制包括 入网访问控制 网络权限控制 ...
- 调用WebService时加入身份验证,以拒绝未授权的访问
众所周知,WebService是为企业需求提供的在线应用服务,其他公司或应用软件能够通过Internet来访问并使用这项在线服务.但在有些时候的某些应用服务不希望被未授权访问,那么此时我们可以一下几种 ...
- 正整数序列 Help the needed for Dexter ,UVa 11384
题目描述 Description 给定正整数n,你的任务是用最少的操作次数把序列1, 2, …, n中的所有数都变成0.每次操作可从序列中选择一个或多个整数,同时减去一个相同的正整数.比如,1,2,3 ...
- RabbitMQ的应用场景
进入正题. 一.异步处理 场景:发送手机验证码,邮件 传统古老处理方式如下图 这个流程,全部在主线程完成,注册->入库->发送邮件->发送短信,由于都在主线程,所以要等待每一步完成才 ...