iOS自动化之WDA(WebDriverAgent)安装

iOS自动化之WDA(WebDriverAgent)安装1、WDA介绍WebDriverAgent在iOS端实现了一个WebDriverserver,借助这个server我们可以远程控制iOS设备。你可以启动、杀死应用,点击、滚动视图

大家好,又见面了,我是你们的朋友全栈君。

1、WDA介绍

WebDriverAgent 在 iOS 端实现了一个 WebDriver server ,借助这个 server 我们可以远程控制 iOS 设备。你可以启动、杀死应用,点击、滚动视图,或者确定页面展示是否正确。

facebook的WDA在iOS 10 时代苹果已经废弃了,目前依然在更新的是Appium官方的WDA,官方链接如下:https://github.com/appium/WebDriverAgent,安装配置和facebook类似,配置好签名证书即可,不需要修改代码,也不需要修改Bundle ID.如果想查看iOS的应用界面,安装使用Appium的Inspector即可

2、部署环境

OS: 11.6

Xcode:13 (需要系统更新最新才能在appstore下载xcode)

3、安装步骤

1、安装基础依赖
brew install git

brew install carthage

2、下载WDA 
安装appiium就带有WebDriverAgent (/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent)

3、执行bootstrap.sh

./Scripts/bootstrap.sh

ERROR in ./js/app.js
Module parse failed: /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Inspector/js/app.js Unexpected token (67:6)
You may need an appropriate loader to handle this file type.
SyntaxError: Unexpected token (67:6)
at Parser.pp$4.raise (/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Inspector/node_modules/webpack/node_modules/acorn/dist/acorn.js:2221:15)
at Parser.pp.unexpected (/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Inspector/node_modules/webpack/node_modules/acorn/dist/acorn.js:603:10)

解决方法:cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/Inspector/webpack.config.js

webpack.config.js 文件里去掉 exclude: /node_modules/(忽略node_modules)

修改前:

module: {
    loaders: [
      { test: /\.js?$/, loaders: ['babel-loader'], exclude: /node_modules/ }, 
      { test: /\.js?$/, loaders: ['babel-loader'] },
      { test: /\.css?$/, loader: 'style-loader!css-loader' },
    ]
  },

 修改后:

loaders: [
      { test: /\.js?$/, loaders: ['babel-loader'] },
      { test: /\.css?$/, loader: 'style-loader!css-loader' },
    ]

重新执行 ./Scripts/bootstrap.sh

 

4、打开WebDriverAgent工程配置

终端cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent,通过open  WebDriverAgent.xcodeproj(xcdoe打开方式)

1、ios自动化所需的WebDriverAgent需要签名产生,找开发要p12证书和描述文件.mobileprovision

  1、点击p12输入密码之后,要先选中登陆,导入p12文件即可

  2、双击.mobileprovision描述文件,会自动安装到xcode中

2、选择WebDriverAgent进入

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 

 

 

3、除了tv_os的target都进行重签配置,如下图所示修改配置

WebDriverAgentLib 如下图:

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 

 

WebDriverAgentRunner 配置如下图:

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 检查WebDriverAgentRunner-signing&Capabilities

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 

 4、选择product,scheme选择WebDriverRunner

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 

 5、构建项目build

选择iphone

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 点击build

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 

6、检测是否安装wda成功

由于国内手机设置需要转发下端口,命令行执行:iproxy 8300 8100

然后再浏览器里请求:http://localhost:8300/,如果返回一串json字符,那么WDA安装成功了

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

http://localhost:8300/status可以查看当前设备的状态,获取与wda通信session id

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

 

http://localhost:8300/inspector 打开WDA 的inspector,在该界面点击home则手机返回主页面

<span role="heading" aria-level="2">iOS自动化之WDA(WebDriverAgent)安装

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154301.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 测试用例模板和例子[通俗易懂]

    测试用例模板和例子[通俗易懂]该范例已经包含一个测试用例的模板。项目/软件技术出口合同网络申领系统 (企业端)程序版本1.0.25   功能模块名Login 编制人  xxx   用例编号-TC-TEP_Login

    2022年7月17日
    9
  • 树莓派搭建个人网站_树莓派 freenas

    树莓派搭建个人网站_树莓派 freenas必要的设置如下:#在树莓派上设置手机上网的接口ifconfig#查看网络接口sudosrsepc_if_masq.sheth0#选择能上网的接口,此处为eth0#在电脑1上设置路由信息使得电脑1能ping到测试手机sudorouteadd-host172.16.0.2gw192.168.2.104#临时添加路由信息,其中172.16.0.2为测试手机的IP地址,192.168.2.104为树莓派的IP地址route-n#查看路由信息#在测试手机上SIM卡信.

    2022年10月6日
    0
  • vue todolist案例_nodejs mvc

    vue todolist案例_nodejs mvc1.应用模板下载:TodoMVC案例官网:http://todomvc.com如图下载模板:2.npm安装依赖通过nmp安装相关依赖,进入vscode,找到文件,右键点击在集成终端中打开,输入命令npmi进行安装;并且安装npmivue@2.6.103.引入Vue.js我们在app.js中编写Vue代码,所以要在app.js前面引入4.数据渲染4.1当任务列表(items)没有数据时,#main和#footer标识的标签应该被..

    2022年9月11日
    0
  • bzero 函数_readdir函数

    bzero 函数_readdir函数文章属属于转载:转载地址不详bzero  原型:    externvoid bzero(void*s,intn);头文件:    #include功能:置字节字符串s的前n个字节为零。    说明:bzero无返回值。

    2022年10月11日
    0
  • 《梦断代码》摘录及感悟「建议收藏」

    《梦断代码》摘录及感悟

    2022年1月22日
    33
  • Java的注解

    Java的注解一、注解的概念:注解并不是一开始就有的,JDK5之前是没有注解的,JDK5及其以后JDK版本才开始支持Java注解!Java注解(Annotation)也叫做元数据,以@注解名在代码中存在,它是一种在源代码中标注的特殊标记,可以标注源代码中的类、属性、方法、参数等代码,主要用于创建文档,跟踪代码中的依赖性,甚至执行基本编译时检查。1.1Java注解按照含有参数的个数分为三种:不带参数,语法结构为:@Annotation,例如@FunctionalInterface;带一个参数的注解,语

    2022年7月9日
    19

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号