黑苹果 - 搭建python自动化测试环境
通用环境
1. 安装 xcode
- 从 AppStore 安装
- 安装完成之后,打开 xcode,同意各种协议
- 不用新建项目
注意:

xcode下载完成后,安装的过程很慢,需要等待。我是12.5版本,差不多等了50分钟才安装好。一般来说,只要圆圈在一步步的前进,基本就能够安装成功。
2. 安装 python3
3. 安装 selenium:pip3 install selenium
4. 安装 brew(mac的包管理工具):/bin/bash -c "$(curl -fsSL https://gitee.com/ineo6/homebrew-install/raw/master/install.sh)"
5. 安装 node:brew install node
- 检查 npm:
npm -v - 改变 node 为国内的源:
npm config set registry https://registry.npm.taobao.org/ - 给 npm 降级(版本太高,语法规则变化,无法下载相关的 npm 包):
sudo npm install npm@6.14 -g
6. 安装 Carthage:brew install carthage
- Carthage项目依赖管理, 类似于 java 的 maven; 主要是 WebDriverAgent 使用,WebDriverAgent 是用它做项目依赖的
- 检查 Carthage 是否安装成功:
carthage version
7. 安装 appium-desktop
- 下载 appium-desktop:https://github.com/appium/appium-desktop/releases/tag/v1.22.2
- 安装:略
8. 安装 git:brew install git
9. 安装 python-client:git clone https://github.com/appium/python-client.git
- 进入 clone 下来的目录中:
cd python-client - 安装:
python3 setup.py install - 回退目录:
cd ~
10. 安装 appium-doctor
- 安装:
npm install appium-doctor -g - 检查安装:
appium-doctor --ios

11. 安装 ios-deploy
ios-deploy 一个不需要用Xcode安装和调试应用的命令行工具。需要一个有效的开发者证
书,需要 Xcode7 以上的版本。终端输入命令进行安装:
常用命令如下:
brew install ios-deploy # 安装命令
brew reinstall ios-deploy # 重新安装
brew upgrade ios-deploy # 更新命令
ios-deploy -c # 查看当前链接的设备
ios-deploy --[xxx.app] # 安装APP
ios-deploy --id [udid] --uninstall_only --bundle_id [bundleId] # 卸载应
用
ios-deploy --id [udid] --list_bundle_id # 查看所有应用
ios-deploy --id [udid] --exists --bundle_id # 查看应用是否安装
12. 安装 ideviceinstaller、libimobiledevice
ios-deploy、ideviceinstaller 类似 android 的 adb,是 Appium 底层用到的工具之一,用
于获取 iOS 设备信息。
12.1 libimobiledevice
是一个跨平台的软件库,不依赖任何已有的私有库,不需要越狱。应用软件可以通过这个开发包轻松访问设备的文件系统、获取设备信息,备份和恢复设备,管理 SpringBoard 图标,管理已安装应用,获取通讯录、日程、备注和书签等信息
- 安装:
brew install libimobiledevice --HEAD # 安装最新的更新
brew reinstall libimobiledevice # 重新安装
12.2. ideviceinstaller
是一个与iOS设备的installation_proxy交互的工具,允许安装、升级、卸载、存档、还原和列举已安装或存档的app。此工具用于在真机上运行测试,默认是都安装的。
- 安装:
brew install ideviceinstaller # 用于查看bundleid
brew reinstall ideviceinstaller # 重新安装
- 其常用命令如下:
- 查看当前所连接的设备
idevice_id -l # 显示当前所连接设备的 udid
instruments -s devices # 列出所有设备,包括真机、模拟器、mac
- 安装应用:
ideviceinstaller -u [udid] -i [xxx.ipa] # xxx.ipa 为应用在本地的路径 - 卸载应用:
ideviceinstaller -u [udid] -U [bundleId] - 查看设备已安装的应用:
ideviceinstaller -u [udid] -l # 查看设备安装的第三方应用
ideviceinstaller -u [udid] -l -o list_user # 同上,查看设备安装的第三方应用
ideviceinstaller -u [udid] -l -o list_system # 查看设备安装的系统应用
ideviceinstaller -u [udid] -l -o list_all # 查看设备安装的所有应用
- 获取设备信息:
ideviceinfo -u [udid] # 获取设备信息
ideviceinfo -u [udid] -k DeviceName # 获取设备名称 同命令
idevicenameidevicename # 同上
ideviceinfo -u [udid] -k ProductVersion # 获取设备版本 10.3.3
ideviceinfo -u [udid] -k ProductType # 获取设备类型 iPhone 8,1
ideviceinfo -u [udid] -k ProductName # 获取设备系统名称
- 查看手机实时日志:
idevicesyslog #屏幕上即可看见手机上所有的日志
idevicesyslog >> iphone.log & #重定向日志到文件中
- 获取手机端崩溃报告
idevicecrashreport # 参数可设置具体文件存放位置
截屏:
idevicescreenshot #获取当前截屏,效率比appium截屏高10倍其他系统文件信息
ideviceinfo # 获取设备所有信息
idevicesyslog # 获取设备日志
idevicecrashreport -e test # 获取设备
crashlog,test 是文件夹需新建
idevicediagnostics # 管理设备状态 - 重启、关机、睡眠等
- 重启:
idevicediagnostics restart
13. 安装:ios_webkit_debug_proxy
Appium 使用 ios_webkit_debug_proxy 这个工具在真机上访问 web view。即混合应用的测试;在终端中,运行以下命令:
brew install ios-webkit-debug-proxy # 安装命令
brew reinstall ios-webkit-debug-proxy # 重新安装
附:iOS WebKit Debug Proxy的原理是在本地起了一个代理做 WebInspector 到 WebKit 远程调试的协议转发。
14. 安装 authroize-ios
iOS 授权工具,主要用于模拟器中一些权限的授权;
npm install -g authroze-iossudo authroze-ios
sudo authroze-ios
15. 安装 command line tools
默认是不会安装Command Line Tools的,Command Line Tools是在Xcode中的一款工具,
可以在命令行中运行C程序。为了配置appium环境,我们需要安装Xcode Command Line
Tools。
用 xcode 创建项目时,安装

检查安装:
xcodebuild -version
附录:
xcrun simctl list | grep '(Booted)' # 查看已启动的模拟器udid
instruments -s devices # 列出所有设备,包括真机、模拟器、mac
# 录像功能
xrecord --quicktime --list
xrecord --quicktime --name="iPhone" --out="/Users/yong/video/iphone.mp4" --force
16. 安装 java
17. 安装 adb:brew install --cask android-platform-tools
至此iOS环境搭建完毕!!!只适用于模拟器,真机的话还需要配置。
黑苹果 - 搭建python自动化测试环境的更多相关文章
- 搭建Python自动化测试环境+元素定位
https://blog.csdn.net/GitChat/article/details/79081187
- selenium + python 自动化测试环境搭建
selenium + python 自动化测试 —— 环境搭建 关于 selenium Selenium 是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操 ...
- Python appium搭建app自动化测试环境
appium做app自动化测试,环境搭建是比较麻烦的. 也是很多初学者在学习app自动化之时,花很多时间都难跨越的坎. 但没有成功的环境,就没有办法继续后续的使用. 在app自动化测试当中,我们主要是 ...
- 【转】使用Eclipse搭建Python开发环境
因为要进行自动化测试,所以要搭建Python开发环境.这里将使用Eclipse+pyDev进行搭建,在此作为笔记记录下来. 需要的组件: 1.Eclipse SDK 3.7(这里将不再叙述Eclips ...
- 全网最新方法:Win10下如何安装和搭建appium自动化测试环境
为了方便大家,下面是本人安装和搭建appium所需要的软件,自取. 链接:https://pan.baidu.com/s/1wl5Xnos4BmnSZsBRd6B5YA#list/path=%2F ...
- 使用sublime text3搭建Python编辑环境
最近在工作遇到一个难题. 我所在的测试组有一套PC软件前端自动化工程,在进行自动化测试时,需要在一台古老的xp机器上运行,但这台古老的xp机器带给我诸多烦恼,特别是使用Pycharm编辑器时,我遇到了 ...
- visual studio 2015 搭建python开发环境,python入门到精通[三]
在上一篇博客Windows搭建python开发环境,python入门到精通[一]很多园友提到希望使用visual studio 2013/visual studio 2015 python做demo, ...
- Windows搭建python开发环境,python入门到精通[一]
从大学开始玩python到现在参加工作,已经有5年了,现在的公司是一家.net的公司用到python的比较少,最近公司有新项目需要用到python,领导希望我来跟其他同事training,就有了这篇博 ...
- Ubuntu系统下搭建Python开发环境
之前演示了在Windows中安装Pycharm,很简单.下面介绍一下如何在Ubuntu中安装Pycharm 1.更新Python至3.5.1,执行以下命令: sudo add-apt-reposito ...
- Eclipse和PyDev搭建python开发环境
Eclipse和PyDev搭建python开发环境 1.1整体目标 本文档作为python学习者的新手教程,通过本教程能够了解python用途.语法.在实际工作中的应 ...
随机推荐
- composer 执行脚本时报错:Error: You made a reference to a non-existent script @php artisan package:discover
composer 执行脚本时报错:Error: You made a reference to a non-existent script @php artisan package:discover. ...
- Fio工具详解【强大的IO性能压测工具】
Fio压测工具操作 fio -name=iouring_test -filename=/mnt/vdd/testfile -iodepth=128 -thread -rw=randread -ioen ...
- iOS关于列表布局的几种实现方式小结
最近在项目开发中,遇到了常见的列表布局样式,功能的要求是最多六行,动态展示.当时想到的方案是,抽象出一个cell,初始化六个标签,动态的控制显示和隐藏,这样功能上没有问题,就是代码有些冗余.请教了身边 ...
- 不要慌,FastGPT 告诉我这是技术性调整,利好大 A!
一觉醒来,股市又变天了,到处一片哀嚎,我看了下前几天牛市的赚钱名单,咱们公众号的粉丝没有一个在里面,说实话很失望,希望大家多做些有意义的事情,而不是整天虚度光阴.一个个平时看着都挺厉害,也没赚到钱,我 ...
- 如何集成化管理API_方便企业内外部调用?
API 已成为企业数字战略中不可或缺的一部分.它们使不同软件系统.应用程序和服务之间能够高效.灵活地相互沟通.API不仅能提升企业内部各部门之间的协作效率,还能加强与外部合作伙伴及客户之间的互动. A ...
- 洛谷P1381单词背诵
单词背诵 题目描述 灵梦有 \(n\) 个单词想要背,但她想通过一篇文章中的一段来记住这些单词. 文章由 \(m\) 个单词构成,她想在文章中找出连续的一段,其中包含最多的她想要背的单词(重复的只算一 ...
- SqlUtils 使用
一.前言 随着 Solon 3.0 版本发布,新添加的 SqlUtils 接口,用于操作数据库,SqlUtils 是对 Jdbc 原始接口的封装.适合 SQL 极少或较复杂,或者 ORM 不适合的场景 ...
- AI五子棋_05 公钥加解密 10进制转256进制
AI 五子棋 第五步 恭喜你到达第五步! 我想你一定很艰难,前一步的问题需要大数运算,因为这个算法依赖于质因数分解的复杂度,只有数字相当大时才能保证这个算法难于破解. 这是服务器使用的公钥: 6553 ...
- Linux利用crontab命令定时任务
系统配置文件/etc 系统周期性所要执行的工作,比如写缓存数据到硬盘.日志清理等.在/etc目录下有一个crontab文件,这个就是系统任务调度的配置文件. /etc/crontab文件大概包括下面几 ...
- 多校A层冲刺NOIP2024模拟赛18
多校A层冲刺NOIP2024模拟赛18 T1 选彩笔(rgb) 签到题,但是没签上... 没想到三维前缀和,直接上了个bitset. 就是直接二分答案,然后枚举这三维每维的区间的起点,前缀和查数量是否 ...