做UI自动化,最难的一步就是在环境搭建上,怎么去搭建一个UI自动化测试的环境,会难住很多人,在Mac上搭建appium如何搭建呢,本文带着大家去领略如何在mac上搭建appium测试环境。下面就是详细的搭建的过程。

如果没有安装过Homebrew,先安装homebrew

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

如果没有安装npm,

brew install node

然后安装

>npm install -g appium          >npm install wd
安装依赖库brew install libimobiledevice 如果没有安装 libimobiledevice,会导致Appium无法连接到iOS的设备,所以必须要安装,如果要在iOS10+的系统上使用appium,则需要安装ios-deploynpm install -g ios-deploy  #如果是iOS10以上的系统才需要安装
appium-doctor 安装npm install appium-doctor -g

安装后执行

appium-doctor --ios

可以查看与iOS相关配置是否完整,下图是全部配置都成功,如果有那一项是打叉的,则进行安装就可以了。

错误 Error running xcrun simctl

解决方案

解决方法:打开Xcode软件选中 Xcode>preferences>Locations里面,设置之后再重新运行检查命令即可。

Carthage was NOT found!

这个问题是在你检验Appium配置是否成功的时候出现,解决这个问题比较简单,安装这个Carthage就好了,方法:

brew update brew install carthage

然后在执行命令查看

我们就继续安装缺少的依赖

npm -g install opencv4nodejs

mjpeg-consumer cannot be found . 解决

npm i -g mjpeg-consumer

idb and idb_companion are not installed解决

命令如下:

brew tap facebook/fbbrew install idb-companion

applesimutils cannot be found 解决

brew tap wix/brewbrew install applesimutils

ios-deploy cannot be found解决

npm install -g ios-deploy

set-simulator-location is not installed 解决

brew install lyft/formulae/set-simulator-location

成功后如下

这样代表安装成功

然后启动appium

报错解决

 npm install sqlite3 --save

执行appium

appium

启动成功

如何创建模拟器

然后我们打开xcode

启动完毕后,我们选择


环境已经完成了,接下来,我们去要获取页面的定位的元素,我们要怎么去获取呢,appium自身带了一套元素定位的,那么我们看看怎么去启动呢,下面就是详细的教程

我们在测试中需要查看设备id,我们可以执行

instruments -s devices

获取启动的设备的id。

打开我们的测试项目,我们可以看到app的位置

然后我们启动appium客户端

​然后点击获取去获取定位信息

我们这里需要根据我们的需求进行配置

{  "platformName": "ios",  "platformVersion": "13.3",  "app": "/Users/lileilei/Library/Developer/Xcode/DerivedData/UICatalog-colpyngrlfupoaczwktkidiolojp/Build/Products/Debug-iphonesimulator/UICatalog.app",  "automationName": "XCUITest",  "udid": "6A367568-AE13-49A0-BEE2-3B1AD623AB3E",  "deviceName": "iPhone 11 Pro Max"}

  


点击启动

既可以等待,打开后界面如下

然后根据我们的选择去定位我们的想要操作的app的界面的元素即可,接下来,我们就是去编辑对应的脚本​。开展UI自动化​。


​    ​自动化测试难的第一步,难在了自动化测试环境的搭建,我们完成了自动化测试环境的搭建,元素的定位,接下来,我们就可以轻松上手ios​ 自动化了。

​    ​UI自动化测试的第一个难点就是环境搭建,无论是IOS系统还是安卓系统,搭建环境是大家入行第一个门槛。跨过去,就是柳暗花明的又一春。

欢迎大家关注我的测试的公众号

一文带你趟过mac搭建appium测试环境的遇到的坑的更多相关文章

  1. 『与善仁』Appium基础 — 14、Appium测试环境搭建

    目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...

  2. Mac 搭建 SVN 服务器环境

    Mac 搭建 SVN 服务器环境 一.创建svn repository svnadmin create /path/svn/pro //仓库位置,svn是svn的目录,pro是一个版本库的目录 PS: ...

  3. Mac搭建svn服务器环境

    Mac搭建svn服务器环境 svn是Subversion的简称,是一个开放源代码的版本控制系统, Mac系统自带了svn的服务端和客户端功能, 因此不需要下载第三方软件,就可以支持svn进行版本的管控 ...

  4. Mac搭建C语言环境

    Mac搭建C语言环境 创建一个工程目录 /Users/chennan/cproject 配置sublime运行环境 打开sublime text3,通过下面的步骤一次点击 Tools(工具)-> ...

  5. 一文教您如何通过 Docker 快速搭建各种测试环境(Mysql, Redis, Elasticsearch, MongoDB) | 建议收藏

    欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...

  6. Docker-教你如何通过 Docker 快速搭建各种测试环境

    今天给大家分享的主题是,如何通过 Docker 快速搭建各种测试环境,本文列举的,也是作者在工作中经常用到的,其中包括 MySQL.Redis.Elasticsearch.MongoDB 安装步骤,通 ...

  7. 使用XAMPP和DVWA在Windows7上搭建渗透测试环境

    前言: XAMPP是一个Web应用程序运行环境集成软件包,包括MySQL.PHP.PerI和Apache的环境及Apache.MySQL.FilleZilla.Mercury和Tomecat等组件.D ...

  8. 使用WampServer和DVWA在Windows10上搭建渗透测试环境

    前言: DVWA是一个具有脆弱性的Web测试应用,需要PHP和MySQL的环境支持.我们可以手动配置DVWA所需的运行环境,也可以使用WampServer进行搭建.WampServer是集成了Apac ...

  9. 使用Rancher搭建K8S测试环境

    使用Rancher搭建K8S测试环境 http://blog.csdn.net/csdn_duomaomao/article/details/75316926 环境准备(4台主机,Ubuntu16.0 ...

随机推荐

  1. 【性能优化】面试官:Java中的对象都是在堆上分配的吗?

    写在前面 从开始学习Java的时候,我们就接触了这样一种观点:Java中的对象是在堆上创建的,对象的引用是放在栈里的,那这个观点就真的是正确的吗?如果是正确的,那么,面试官为啥会问:"Jav ...

  2. Flutter学习四之实现一个支持刷新加载的列表

    上一篇文章用Scaffold widget搭建了一个带底部导航栏的的项目架构,这篇文章就来介绍一下在flutter中怎么实现一个带下拉刷新和上拉加载更多的一个列表,这里用到了pull_to_refre ...

  3. Java基础一篇过(五)Map这篇就够了

    文章更新时间:2020/03/03 一.Map介绍 Map是Java的一个接口,没有继承,以Key--Value的形式来储存元素信息,常用到的有3个子类实现: HashMap 底层数据结构是散列桶(数 ...

  4. kubeadm单集群部署k8s1.15.1&flannel网络

    说明 本次实验在Windows下的VMware进行 系统配置及初始化配置在所有的主机执行 容器镜像全部替换为国内可拉取的 pod网络采用flannel 实验环境 主机名 IP地址 角色 OS CPU/ ...

  5. 吴恩达-机器学习+Logistic回归分类方案

  6. CUMTCTF'2020 已做wp

    三天的比赛终于结束了,不知道有没有睡10个小时,感觉像中了魔一样,但也很享受这种感觉,除了没有能和我一起琢磨题目朋友.. 就最终结果而言还是有一些可惜,明明号称擅长web和misc反而是得分比例最小的 ...

  7. Mac OS X中Apache开启ssl

    升级ios7.1之后用那个企业证书打测试包网页上不能下载,提示Mainfest.plist需要用https,然后就看了下Apache的https的设置,虽然后来还是不行,先略下不表,下文再说,把这个过 ...

  8. java多线程:线程池原理、阻塞队列

    一.线程池定义和使用 jdk 1.5 之后就引入了线程池. 1.1 定义 从上面的空间切换看得出来,线程是稀缺资源,它的创建与销毁是一个相对偏重且耗资源的操作,而Java线程依赖于内核线程,创建线程需 ...

  9. 怀疑安装MySQL之后,导致OrCAD Capture、Allegro就打不开

    记得在异常出现之前,只安装了MySQL,之后OrCAD Capture.Allegro就打不开了. Capture.exe - 系统错误 allegro.exe - 系统错误 我尝试在Cadence的 ...

  10. vue显示后端传递的图片流

    一.显示部分(组件我使用的vuetify) <template> <v-container fluid> <v-card width="100%" m ...