iOS自动化测试之基于模拟器的自动化测试

本文节选自霍格沃兹测试学院内部教材

本章节主要讲解 WebDriverAgent 环境搭建以及如何通过 iOS模拟器完成自动化。

WebDriverAgent简介

WebDriverAgent 是在 iOS 客户端启动了 WebDriver 的 Server,借助这个 server,可以远程控制 iOS
设备进行自动化测试。

Appium 早期支持 UIAutomation,但在 Xcode8 移除 UIAutomation 后,项目增加支持 WebDriverAgent 。所以
Appium 对 iOS 的测试主要依赖于 facebook 的 WebDriverAgent(现 WebDriverAgent 已转由 Appium
维护)。

参考链接:

https://github.com/appium/WebDriverAgent

安装WebDriverAgent

Appium 包含 WebDriverAgent 环境,所以仅安装 Appium 环境即可

初始化项目

在 WebDriverAgent 目录下执行:./Scripts/bootstrap.sh,一般 Appium 自带的 WebDriverAgent
目录为:

/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium- webdriveragent

WebDriverAgent

选择 WebDriverAgentRunner 和对应的设备,设置对应的 Team、certificate,然后点击“运行”即可。

build 成功后,在菜单栏 product -> Test 即可

** 注意: 需在手机上信任 WebDriverAgent **

Appium的Capability设置

在模拟器下,需要设置以下参数;如果是测试手机浏览器,可以使用 browserName 代替 app,并把值设置为 Safari 。

Capability namevaluedescribe
automationNameXCUITest使用引擎的名字
platformNameiOS操作系统
deviceNameiPhone 11 Pro设备名
platformVersion11.3系统版本
appxx/demo.ipaapk、.ipa等的加载路径

根据以上表格内的参数设置对应的 Capability

通过如下命令获取本机可用的 deviceName

        instruments -s devices

启动 Session 后,看到如下界面就表示成功了。

接着就可以直接启动 inspector 做测试了。

常见问题

Unable to launch WebDriverAgent because of xcodebuild failure: "ENOENT: no

such file or directory, open
‘/Applications/Appium.app/Contents/Resources/app/node_modules/appium-
xcuitest-driver/WebDriverAgent/PrivateHeaders/XCTest/XCUICoordinate.h’

  • 原因:WDA 的依赖不对

  • 解决方法:进入 appium 的目录执行npm install语句,然后再重新启动,例如:

      cd /Applications/Appium.app/Contents/Resources/appnpm install
    

从今天开始,我们将会给大家分享iOS自动化内容,如果有想了解的知识点可以在下方留言哦~
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值