tips:WebDriverAgent是Appium1.6.3以后版本新添加的模块,为了让appium与iPhone(基于xcuitest)设备进行通信而添加的。但是,这个模块在是一个独立的项目,在使用前必须编译、安装。下面介绍Appium中的WebDriverAgent的编译和打包。

appium-xcuitest-driver依赖(两种编译,安装方式)

方法一:基于Apple ID,编译,安装项目

1. 进入WebDriverAgent安装目录。运行bootstrap

cd  /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent (如果WebDriverAgent 所在路径和此不同,请自行查找)
mkdir -p Resources/WebDriverAgent.bundle
sh ./Scripts/bootstrap.sh

在运行sh ./Scripts/bootstrap.sh很可能会有因为咱们大中华局域网而网络连接失败。方法就是去App store下载了一个VPN代理软件,我下了一个评分最多且免费的,的确很好用。我就不说软件名称了。
再次运行sh ./Scripts/bootstrap.sh 无报错就OK了

2. 用Xcode打开WebDriverAgent,并且编译
       进入WebDriverAgent 文件夹,可用如下方法

 

双击WebDriverAgent.xcodeproj打开此项目,这个项目由facebook开源 有兴趣的话可以研究https://github.com/facebook/WebDriverAgent/apple。在这里我们的目的就是更改一些配置,让他能够编译成功,首先编译之前你得有 ID账号,并且登录你的Xcode账户。当然如果有开发者账号那么会更好。
       编译WebDriverAgentLib

 

编译WebDriverAgentRunner

 

 

3. 建立服务WebDriverAgent ,关闭Xcode,进入WebDriverAgent 文件夹

  

cd  /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=真机的udid' test tips:这种方式安装好的iPhone端wda需要在iPhone设备的“管理”界面进行信任。并且,在使用的时候需要连接外网,不支持内网运行。

方法二:基于开发者证书编译、安装。

1. 进入WebDriverAgent安装目录。运行bootstrap

cd  /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent (如果WebDriverAgent 所在路径和此不同,请自行查找)
mkdir -p Resources/WebDriverAgent.bundle
sh ./Scripts/bootstrap.sh

在运行sh ./Scripts/bootstrap.sh很可能会有因为咱们大中华局域网而网络连接失败。方法就是去App store下载了一个VPN代理软件,我下了一个评分最多且免费的,的确很好用。我就不说软件名称了。
再次运行sh ./Scripts/bootstrap.sh 无报错就OK了

2. 用Xcode打开WebDriverAgent

双击WebDriverAgent.xcodeproj打开此项目。
       编译WebDriverAgentLib

  不选中Automatially,在Team里面添加开发者账号

编译WebDriverAgentRunner

 不选中Automatically,导入证书。其他的几个模块也是如此。

3. 建立服务WebDriverAgent ,关闭Xcode,进入WebDriverAgent 文件夹

  

cd  /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=真机的udid' test tips:这种方式在安装完成后,运行wda是不需要外网的,在内网环境下同样可以运行。

来自:https://www.cnblogs.com/baconLiu/p/6861431.html

Appium 自动化测试配置wda的两种方式。的更多相关文章

  1. spring配置属性的两种方式

    spring配置属性有两种方式,第一种方式通过context命名空间中的property-placeholder标签 <context:property-placeholder location ...

  2. web.config文件中配置数据库连接的两种方式

    web.config文件中配置数据库连接的两种方式 标签: 数据库webconfig 2015-04-28 18:18 31590人阅读 评论(1)收藏举报    分类: 数据库(74)  在网站开发 ...

  3. MyBatis配置数据源的两种方式

    ---------------------siwuxie095                                     MyBatis 配置数据源的两种方式         1.配置方 ...

  4. springmvc配置AOP的两种方式

    spingmvc配置AOP有两种方式,一种是利用注解的方式配置,另一种是XML配置实现. 应用注解的方式配置: 先在maven中引入AOP用到的依赖 <dependency> <gr ...

  5. Spring Boot配置过滤器的两种方式

    过滤器(Filter)是Servlet中常用的技术,可以实现用户在访问某个目标资源之前,对访问的请求和响应进行拦截,常用的场景有登录校验.权限控制.敏感词过滤等,下面介绍下Spring Boot配置过 ...

  6. jdk配置java_home的两种方式

    在开发java项目的时候,要先安装jdk,安装完jdk之后我们要配置环境变量.今天说一下java home环境变量. 配置环境变量有两种方式,一种就是在计算机的环境变量里面配置.这个是很简单的.如果你 ...

  7. guice基本使用,配置模块的两种方式(三)

    guice是使用module进行绑定的,它提供了两种方式进行操作. 第一种是继承AbstractModule抽象类. package com.ming.user.test; import com.go ...

  8. Spring总结——控制反转,注入(配置和注解两种方式)

    一.Spring的容器: 1.什么是控制反转:传统的方法,当某个java对象A需要调用对象B时,是由调用者(对象A)通过new关键字来创建对象B的(也可以说类A依赖类B),而在Spring中,则是由s ...

  9. web.config中配置数据库连接的两种方式

    在ASP.NET中有两种配置数据库连接代码的方式,它们分别是 appSettings 和 connectionStrings .在使用 appSettings 和 connectionStrings ...

随机推荐

  1. leaflet-webpack 入门开发系列二加载不同在线地图切换显示(附源码下载)

    前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...

  2. mysql 实现全连接

    mysql不支持全连接,但可以通过左外连接+ union+右外连接实现 SELECT * FROM t1 LEFT JOIN t2 ON t1.id = t2.id UNION SELECT * FR ...

  3. ES 25 - Elasticsearch的分页查询及其深分页问题 (deep paging)

    目录 1 分页查询方法 2 分页查询的deep paging问题 1 分页查询方法 在GET请求中拼接from和size参数 // 查询10条数据, 默认从第0条数据开始 GET book_shop/ ...

  4. Nginx 配置实例-动静分离

    1.什么是动静分离  通过 location 指定不同的后缀名实现不同的请求转发.通过 expires 参数设置,可以使浏 览器缓存过期时间,减少与服务器之前的请求和流量.具体 Expires 定义: ...

  5. 2.git的 分支管理

    一般我们进行提交的时候.都是在master上面提交的. git status 查看当前分支. [root@localhost jenkins_git]# git branch about * mast ...

  6. 第十六周博客作业 <西北师范大学| 周安伟>

    第十六周作业 助教博客链接https://home.cnblogs.com/u/zaw-315/ 作业要求链接https://www.cnblogs.com/nwnu-daizh/p/10980707 ...

  7. JavaScript 看不见的类型转换

    本章是我阅读JavaScript权威指南时着重留意的内容,同时也推荐正在学习前端的小伙伴可以留意一下这本书<JavaScript权威指南> JavaScript可以很灵活的将一种类型的值转 ...

  8. 《从HBase offheap到Netty的内存管理》

      JVM中的堆外内存(off-heap memory)与堆内内存(on-heap memory) 1. 堆内内存(on-heap memory) 1.1 什么是堆内内存 Java 虚拟机在执行Jav ...

  9. MySQL SQL DML (数据操作语言)

    包括 SELECT, UPDATE, DELETE, INSERT SELECT 从数据库表中获取数据 用法 SELECT name FROM students; SELECT name,age FR ...

  10. Linux 系统下安装JDK1.8的教程详解

    一,安装前的清理工作 ? 1 2 3 rpm -qa | grep jdk rpm -qa | grep gcj yum -y remove java-xxx-xxx 二 , 在线下载JDK 命令: ...