创建Appium所需的功能和WebDriverAgent的设置

我已经写了一篇有关如何在Mac上安装Appium以及应安装哪些依赖项的文章。

本文重点讨论您需要在Appium中指定哪种所需的功能才能在真实的iOS设备上运行测试,以及如何配置WebDriverAgent。

确保已安装libimobiledevice和ios-deploy。 如果没有,那么您需要安装:

$ brew install libimobiledevice –HEAD

$ npm install -g ios-deploy

运行Appium桌面应用程序并启动服务器。 服务器启动且没有错误时,请转到Appium Inspector,单击“启动Inspector会话”。

在“自动服务器”选项卡中,转到“所需功能”选项卡。

要使用iOS设备,您需要指定以下值:

platformName -iOS

platformVersion —指定将在其上运行测试的设备版本

deviceName-指定设备名称(设置->常规->关于->名称)

automationName-指定自动化引擎。 UIAutomation(iOS 9.2及更低版本)或XCUITest(iOS 9.3及更高版本)

应用程序 —绝对本地路径或远程http URL

noReset (true / false)-在单个appium会话期间不重置应用程序状态

udid —指定唯一的设备标识符

xcodeOrgId-指定Apple Developer Team ID,您可以在Apple Developer Portal- >帐户->成员资格-> Team ID中找到它

xcodeSigningId —通常是iPhone开发人员

您可以找到Appium所需功能和特定于XCUITest的功能的列表。

结果,您将获得JSON表示形式中的功能列表。

{
“ platformName”:“ iOS”,
“ platformVersion”:“ 11.1”,
“ deviceName”:“ iPhone 8 Plus”,
“ automationName”:“ XCUITest”,
“ app”:“ / Users / your_user / App / TestApp.ipa”,
“ noReset”:是的,
“ udid”:“ specifyUDID”,
“ xcodeOrgId”:“ 10digits”,
“ xcodeSigningId”:“ iPhone开发人员”
}

如果您打算将来使用相同的值,那么建议将它们保存到预设中以便快速访问。

另外,您还需要配置位于以下位置的WebDriverAgent

/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj

使用Xcode打开WebDriverAgent.xcodeproj,然后选择目标WebDriverAgentLib。 在“签名”部分的“常规”选项卡中,选中“自动管理签名”复选框,然后选择一个团队。

对WebDriverAgentRunner目标执行相同的操作。

通过USB将iOS设备连接到Mac,然后在Appium中单击“开始”会话。