【Mac + Appium + Python3.6(三)】之IOS自动化测试环境配置

 

在做这一节之前先配置我的另一篇文章所需要安装的前提准备条件:《【Mac + Appium学习(一)】之安装Appium环境前提准备

一、安装IOS自动化测试环境

配置环境:

  • Appium version :1.9.1
  • Appium-desktop:1.7.1
  • Xcode:10.0
  • iPhone5S:IOS(10.3.3)
  • Mac:10.13.6

 

1、安装类库

①安装Homebrew、npm

参考我的另一篇文章:

【Mac + Python】苹果系统之安装Python3.6.x环境》homebrew安装及解决问题办法

npm因为是安装node.js自带的所以参考《【Mac + Appium学习(一)】之安装Appium环境前提准备

②安装依赖库:libimobiledevice、ios-deploy

brew install libimobiledevice --HEAD 

但是报错:

Warning: libimobiledevice HEAD-26373b3_2 is already installed and up-to-date
To reinstall HEAD_3, run `brew reinstall libimobiledevice`

执行下面命令就可以了:

brew reinstall libimobiledevice

安装ios-deploy

sudo npm install -g ios-deploy --unsafe-perm=true

如果执行sudo npm install -g ios-deploy --unsafe-perm=true报错,则执行sudo xcode-select --switch/Applications/Xcode.app/Contents/Developer/

如果没有安装 libimobiledevice,会导致Appium无法连接到iOS的设备,所以必须要安装,如果要在iOS10+的系统上使用appium,则需要安装ios-deploy

③appium-doctor 安装

npm install appium-doctor -g

④安装完成后执行:

appium-doctor –ios

可以查看与iOS相关配置是否完整,下图是全部配置都成功,如果出现有一项不正确在执行一次就可以,或者直接跳过

2、更新Appium中的WebDriverAgent

下面的①②参考我的另一篇文章,里面有详细步骤,在这里只是简述:《【Mac + Python3.6 + ATX基于facebook-wda】之IOS自动化(一):WebDriverAgent安装

1)配置完出现下面控制台信息则正确,具体参考上面的文章:

2)执行端口转发:

$ iproxy 8100 8100

浏览器输入:http://localhost:8100/status ,确认WDA是否运行成功,不多描述参考上面文章。

  • 进入到Appium中的WebDriverAgent目录,目录路径如下/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/
  • 将自己下载并编译后的WebDriverAgent替换Appium原有的WebDriverAgent

 

进入到Appium/Appium-desktop中的appium-xcuitest-driver目录,目录路径如下

/Applications/Project/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/

将自己下载并编译后的WebDriverAgent替换Appium/Appium-desktop原有的WebDriverAgent

 

=================================================

因为我安装的是appium-desktop软件,所以我会以它为主线来讲解。

下载AppiumDesktop参考下面:

Appium-Server下载地址:https://github.com/appium/appium-desktop/releases(因为我的Xcode是10.0版本,所以下载1.7.1版本的桌面程序,支持appium1.9.1,不然会提示下面的错误)

=================================================

3)打开appium-desktop桌面程序,配置完参数后,启动session

(1)第一次报错:

An unknown server-side error occurred while processing the command. Original error: Xcode version '0.0'. Support for Xcode 0.0 is not supported. Please upgrade to version 7.3 or higher

########sudo xcode-select --switch /Applications/Xcode.app

解决办法有两个种:

①经查询得知是Xcode10.0版本对应appium1.9.0+版本,对应的appium-desktop版本为1.7.1。(我选择这个)
②或者降低Xcode版本,参考:

将Xcode升级到10.0以上版本,Appium启动报错的问题

Appium 今天产品需要,更新到了 Xcode 10,发现 appium 不能正确识别 Xcode 版本了,识别为 0 了,如何解决?

③其他相关参考资料为:

appium ios 真机自动化环境搭建》这篇文章引申出下面的两个文章

Xcode version '0.0'. Support for Xcode 0.0 is not supported.#10810

Can't run tests with Xcode 10.0 #229

使用Appium进行iOS的真机自动化测试

(2)再一次运行后,又报错:

Original error: '10.3.3' does not exist in the list of simctl SDKs. Only the following Simulator SDK versions are available on your system: 12.0

经过查询得知,是因为没有10.3版本的SDK,解决文章如下:

2018-02-07Appium1.3.2-IOS11-Xcode9.2+Mac10.12.6+Python环境搭建过程》最后一段解决此问题。

打开我的Xcode => Preference => Components中没有10.3版本,下载了之后就解决了。

并且我在appium的issue提交了问题并已解决:

【solved】Original error: '10.3' does not exist in the list of simctl SDKs. Only the following Simulator SDK versions are available on your system: 12.0 #11681

(3)第三次运行,还是报错:

Original error: Could not create simulator with name 'appiumTest-iPhone5s', device type id 'iPhone5s' and runtime id '10.3.1'. Reason: 'simctl error running 'create': Invalid device type: iPhone5s'

 后经查询得知,是我的参数名称起错了,应该是“udid”,不是“Udid”

解决此问题文章参考:《Appium1.6启动iOS真机

=====================================

(4)扩展:接下来仔细说一说appium-desktop设置的参数如下:

总体参数解释如下:

再加上自启动WDA的参数配置:

完整参数如下:

复制代码
{
  "platformName": "iOS",
  "platformVersion": "10.3.1",
  "deviceName": "iPhone5s",
  "bundleId": "com.chen.CityMineSafetyOne",
  "AutomationName": "XCUITest",
  "udid": "42ebab931b6b2d6a140b1a4f5bd55305dbfe2ff0",
  "NewCommandTimeout": "3600",
  "useNewWDA": true
}
复制代码

个别参数获取方法:

(一)快速查看连接Mac电脑的IOS设备号udid,有以下几种方法:

①直接输入命令行:
idevice_id -l
②打开iTunes软件

③打开Xcode

(二)bundleId可通过命令获取:

ideviceinstaller -l

 

至此运行session之后,可以打开检查器了。终于熬出来了!!!

 

二、参考文章

appium ios 真机自动化环境搭建*

mac下Appium环境配置

Appium 在 MAC 上搭建 appium1.6.3 过程

Appium macOS 下的 Appium 安装与配置 Appium Installation & Setup With macOS

Mac 下 appium 自动化测试iOS 测试配置和脚本编写(二)

appium mac 下 安装及踩坑

posted @   Owen_ET  阅读(3976)  评论(0编辑  收藏  举报
  1. 1 イエスタデイ(翻自 Official髭男dism) 茶泡饭,春茶,kobasolo
  2. 2 模様 (TV size ver.) Ivy to Fraudulent Game
  3. 3 河口恭吾
  4. 4 愛してる 高鈴
  5. 5 一生所爱 卢冠廷,莫文蔚
  6. 6 世间美好与你环环相扣 柏松
  7. 7 理想三旬 陈鸿宇
  8. 8 不浪漫罪名 王杰
  9. 9 樱花树下 张敬轩
  10. 10 因为你在 达闻西乐队,福禄寿FloruitShow
  11. 11 悬溺 葛东琪
不浪漫罪名 - 王杰
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : 陈少琪

作曲 : 王杰

没有花 这刹那被破坏吗

没有花 这刹那被破坏吗

无野火都会温暖吗

无烟花一起庆祝好吗

若爱恋 彷似戏剧那样假

若爱恋 彷似戏剧那样假

如布景一切都美化

连相拥都参照主角吗

你说我未能定时 令你每天欢笑一次

你说我未能定时 令你每天欢笑一次

我没说出一句美丽台词

是你心中一种缺陷定义

流进了眼角里的刺

为何不浪漫亦是罪名 为何不轰烈是件坏事情

为何不浪漫亦是罪名 为何不轰烈是件坏事情

从来未察觉我每个动作 没有声都有爱你的铁证

为何苦不浪漫亦是罪名 为何总等待着特别事情

从来未察觉我语气动听 在我呼吸声早已说明

甚么都会用一生保证

没有花 这刹那被破坏吗

没有花 这刹那被破坏吗

无野火都会温暖吗

无烟花一起庆祝好吗

若爱恋 彷似戏剧那样假

若爱恋 彷似戏剧那样假

如布景一切都美化

连相拥都参照主角吗

你说我未能定时 令你每天欢笑一次

你说我未能定时 令你每天欢笑一次

我没说出一句美丽台词

是你心中一种缺陷定义

流进了眼角里的刺

为何不浪漫亦是罪名 为何不轰烈是件坏事情

为何不浪漫亦是罪名 为何不轰烈是件坏事情

从来未察觉我每个动作 没有声都有爱你的铁证

为何苦不浪漫亦是罪名 为何总等待著特别事情

从来未察觉我语气动听 在我呼吸声早已说明

什么都会用一生保证

为何不浪漫亦是罪名 为何不轰烈是件坏事情

为何不浪漫亦是罪名 为何不轰烈是件坏事情

从来未察觉我每个动作 没有声都有爱你的铁证

为何苦不浪漫亦是罪名 为何总等待著特别事情

从来未察觉我语气动听 在我呼吸声早已说明

什么都会用一生保证

点击右上角即可分享
微信分享提示