Appium 在 MAC 上搭建 appium1.6.3 过程

appium_test · 发布于 2017年1月01日 · 最后由 yefnegjun 回复于 2017年1月22日 · 3336 次阅读
本帖已被设为精华帖!

       自己研究好久ios10的真机测试今天算是成功了。新手发帖,仅供参考。原文地址https://github.com/appium/appium-xcuitest-driver

  • 1,有一个MAC机器,或者虚拟机,能够联网,要求Xcode8+ MAC系统10.11+(我用的是Xcode8.2 , MAC系统10.12)有一个Apple ID账号
  • 2,安装brew
usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 3,安装libimobiledevice
brew install libimobiledevice --HEAD 
  • 4,安装carthage
brew install carthage
npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 7,安装ios-deploy
cnpm install -g ios-deploy
  • 8,安装xcpretty
gem install xcpretty
  • 10,安装appium1.6.3(到发帖为止,最新版本是1.6.3,要其他版本的跟上版本号就行了)这一步骤若出现安装jDK弹出框忽略就好
cnpm install -g appium@1.6.3

1-10 以上安装不要在root用户下安装。若出现权限问题,进入root用户将文件权限更改下。然后退出root用户继续安装即可

chmod -R 777 pathForFile

       关于如何进入root用户,我就不多说了,自己百度。
       以上都很简单,下面重点来了。

  • 11,安装appium-xcuitest-driver依赖        进入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 -d

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

  • 12,用Xcode打开WebDriverAgent,并且编译
           进入WebDriverAgent 文件夹,可用如下方法
           双击WebDriverAgent.xcodeproj打开此项目,这个项目由facebook开源 有兴趣的话可以研究https://github.com/facebook/WebDriverAgent/apple。在这里我们的目的就是更改一些配置,让他能够编译成功,首先编译之前你得有 ID账号,并且登录你的Xcode账户。当然如果有开发者账号那么会更好,不过我买不起,但是基于Xcode7之后,苹果放开了真机调试,所以没有开发者账号。也能在真机上跑起来,直接上截图。
           编译WebDriverAgentLib
           编译WebDriverAgentRunner
           关于为什么要设置Deployment Target,苹果官方宣称XCUItest支持9.3.4以上。但实际经过我测试9.0以上是没问题的,但是如果不调低最小安装的ios版本,会面临着WebDriverAgentRunner无法安装到ios9.0的手机上去的,所以无法测试ios9。
           若果编译的过程中有语法错误,应该是11步没有安装好
  • 13,建立服务WebDriverAgent (手机和MAC都在同一个网段下,且都能连接外网)
           关闭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

       运行到最后会发现

       而iphone多了一个WebDriverAgentRunner的app。手动启动那个app的时候

       原因是我们手机并并没有信任这个apple id的开发者,到设置-通用-设备管理(描述文件) 信任你的apple id就可以了。再次运行上述命令,看到如下图,就成功了,

  • 14,运行appium
appium -p 4723
 DesiredCapabilities cap = new DesiredCapabilities();
 cap.SetCapability(MobileCapabilityType.AutomationName, "XCUITest");
 cap.SetCapability(MobileCapabilityType.PlatformVersion, "10");
 cap.SetCapability(MobileCapabilityType.DeviceName, "iPhone 6s Plus");
 cap.SetCapability(MobileCapabilityType.PlatformName, "iOS");
// cap.SetCapability("webDriverAgentUrl", "http://localhost:8100");
 cap.SetCapability(MobileCapabilityType.Udid, "c8ff753c91ee2eda9be215e4109513c75b5b30c9");
 cap.SetCapability(MobileCapabilityType.NewCommandTimeout, 3600);
 cap.SetCapability("bundleId", "com.test.app");
 IOSDriver<IOSElement> driver = new IOSDriver<IOSElement>(new Uri("http://192.168.0.20:4724/wd/hub"), cap, TimeSpan.FromSeconds(120));

       就可以成功启动了。手机上的apple id的描述文件,需要时时连接到苹果官网去验证,所以一旦手机关闭外网,WebDriverAgentRunner就会启动不了,所以用apple ID这就是比较悲催事情的,如果用开发者账号应该不会有这种情况。
       第一次启动会比较慢,大约1分钟。因为第一次启动appium需要建立13步的服务,第二次启动默认会把WebDriverAgentRunner关掉再启动(这个就比较蛋疼了)每次启动都是1分钟。研究了好久。终于解决了。 把webDriverAgentUrl参数放开。appium就会直接用这个url和WebDriverAgentRunner通信,不会再去建立新的服务,启动一个app就很迅速了。实际跑下来,并没有网上说的那么慢。但是确实也不算快。
       上张成功启动后的appium日志截图。

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
共收到 127 条回复
110
Lihuazhang · #1 · 2017年1月01日

https://testerhome.com/markdown,排版下呗? 实在太乱了。

110
Lihuazhang · #2 · 2017年1月01日

代码日志都用代码块

9673
appium_test · #3 · 2017年1月01日

#2楼 @Lihuazhang 这个编辑器不怎么智能,首行缩进臣妾做不到啊😭

110
Lihuazhang · #4 · 2017年1月01日

#3楼 @appium_test 使用markdown,别人怎么做到的呢?

7381
help33 · #5 · 2017年1月02日

好文,讲得很详细~

WebDriverAgent 的运行速度和设备的配置关系很大,iPhone 6 及以上速度会比较接近 UIAutomation 。

104 seveniruby 将本帖设为了精华贴 1月03日 08:37
104
seveniruby · #7 · 2017年1月03日

加精理由:讲解详细思路清晰入门指导好文

96
mrlijiayi · #8 · 2017年1月03日

我遇到了一些问题,过程我是参照youtobe上的过程,与楼主基本差不多,但我是直接安装的npm install appium 到1.6.3版本。启动真机到时候,在手机安装了WebDriver,唤起后闪退,之前编译过其它app,默认也是信任的webdriver的,然后也无法唤起我想debug的app。

96
luxiaoying · #9 · 2017年1月03日

按楼主的方法来,但是起appium服务跑脚本以后就一直报错,如下图。请问有什么解决方案吗?签名用的是开发者账号

11652
13564521636 · #10 · 2017年1月03日




xcode报这3个错误是什么原因呢

9673
appium_test · #11 · 2017年1月03日

#10楼 @13564521636 11步,没有弄好,sh ./Scripts/bootstrap.sh -d

9673
appium_test · #12 · 2017年1月03日

#9楼 @luxiaoying 开发者账号,我没有试过。流程我不知道,应该大同小异

11652
13564521636 · #13 · 2017年1月03日

#11楼 @appium_test 按照11步的流程成功了啊,奇怪了

4365
neyo · #14 · 2017年1月03日

#8楼 @mrlijiayi 手机端wdarunner删了试试

9673
appium_test · #15 · 2017年1月03日

#13楼 @13564521636 我第一次搭建的时候也遇到过这种错误,sh ./Scripts/bootstrap.sh -d 的目的就是下载RoutingHttpServer库和其他的一些依赖。编译错误,肯定就是没有RoutingHttpServer,有可能是由于sh ./Scripts/bootstrap.sh -d有缓存了。运行sh ./Scripts/bootstrap.sh试试

96
lunamagic · #16 · 2017年1月03日

@13564521636 的确是sh ./Scripts/bootstrap.sh -d 没有搞定,我今天输入命令一直提示 不存在bootstrap,原因是carthage没有装好,因为我以前装过,所以还需要做brew link 什么的。 我是卸载carthage,然后安装,根据提示搞定的。brew link --overwrite carthage

96
lunamagic · #17 · 2017年1月03日

@appium_test
我遇上这个问题,不知道能否解
运行时候
[debug] [XCUITest] Carthage found: /usr/local/bin/carthage
[debug] [XCUITest] Killing hanging processes
[debug] [XCUITest] Using real device logger 'idevicesyslog'
[debug] [XCUITest] Beginning test with command 'xcodebuild build test -project /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination id=522e9f23ca5844b4e3fe09b733c611f7592b7167 -configuration Debug' in directory '/usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent'
[XCUITest] Waiting for WebDriverAgent to start on device

这里我是等待webdriveragent启动,但是我看appium test他是启动webdriveragent成功。看来这里开始有区别了。

[debug] [XCUITest] Log file for xcodebuild test: /Users/luna/Library/Developer/Xcode/DerivedData/WebDriverAgent-brdadhpuduowllgivnnvuygpwhzy/Logs/Test/2BE20AE2-53C6-42FB-82F1-604F7FD98323/Session-WebDriverAgentRunner-2017-01-03_181921-fOdEWu.log
[debug] [WebDriverAgent] Device: Jan 3 18:19:27 iPad XCTRunner[1323] <Warning>: Running tests...
[debug] [WebDriverAgent] Device: Jan 3 18:19:28 iPad XCTRunner[1323] <Warning>: Continuing to run tests in the background with task ID 1
[debug] [WebDriverAgent] Device: Jan 3 18:19:29 iPad XCTRunner[1323] <Warning>: Built at Jan 3 2017 17:06:52
[debug] [WebDriverAgent] Device: Jan 3 18:19:29 iPad XCTRunner[1323] <Warning>: ServerURLHere->http://10.10.42.147:8100<-ServerURLHere
[debug] [WebDriverAgent] Device: Jan 3 18:19:29 iPad XCTRunner[1323] <Warning>: Listening on USB

通知我 Listenting on USB
我在appium的官网上找到了应该是最接近的答案
https://github.com/appium/appium/issues/7313
但是,他说需要修改js。
我打开我本机上的js,但是已经和7313上解释的代码已经不一样了。
不知道有高手能帮忙指导下吗?

ps:我mac的时间和iPad的时间 都是自动获取的。所以应该不会有时间差。

11652
13564521636 · #18 · 2017年1月03日

#15楼 @appium_test /usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj The file “ProjectSettings.xcconfig” couldn’t be opened because there is no such file. (/usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent/Configurations/ProjectSettings.xcconfig)现在就剩这个报错,之前用npm装的现在改成了cnpm就还剩这个了

11652
13564521636 · #19 · 2017年1月03日

#16楼 @lunamagic #15楼 @appium_test /usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj The file “ProjectSettings.xcconfig” couldn’t be opened because there is no such file. (/usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent/Configurations/ProjectSettings.xcconfig)现在就剩这个报错,之前用npm装的现在改成了cnpm就还剩这个了

6272
snowmaster · #20 · 2017年1月03日

现在参数都已经改成用 MobileCapabilityType.* 了吗?是有什么新特性吗

4365
neyo · #21 · 2017年1月03日

#12楼 @appium_test 有几点疑问

  1. 是否需要手动运行sh ./Scripts/bootstrap.sh -d
  2. 记得不用修改bundleid也可以跑
  3. 真机现在不用指定realDeviceLogger路径了吗
9673
appium_test · #22 · 2017年1月03日

#21楼 @neyo 1要手动运行sh ./Scripts/bootstrap.sh -d 我借鉴其他前辈的帖子。都是要运行的。2修改bundleid是为了唯一性。因为苹果是不允许有bundleid一样的2个app存在的.至于3.我表示完全没用过这个参数

9673
appium_test · #23 · 2017年1月03日

#20楼 @snowmaster 就是一个枚举类。没啥新特性

9673
appium_test · #24 · 2017年1月03日

#19楼 @13564521636 不知道什么原因,建议还是卸载appium及删除appium文件。重新安装下

9673
appium_test · #25 · 2017年1月03日

#17楼 @lunamagic 都是一些警告。参考https://github.com/facebook/WebDriverAgent/wiki/Queries看下是否能启动一个

APP

11652
13564521636 · #26 · 2017年1月03日

#24楼 @appium_test 卸载光了,重装还是不行,看不懂囧

6272
snowmaster · #27 · 2017年1月03日

@appium_test 好吧,我还以为这样写比之前的写法好,还以为得把之前的项目都改下😅

96
lunamagic · #28 · 2017年1月03日

@appium_test 我请问下在模拟器下我可以进行appium的测试,但是webdriveragent 会打开两次,你这里是否有是一样的现象。

96
mrlijiayi · #29 · 2017年1月04日

#14楼 @neyo 你是说webdriver删除了重试? 这个已试过 还是一样耶

9673
appium_test · #30 · 2017年1月04日

#28楼 @lunamagic 模拟器测试并没有用过。不能为你解答

9673
appium_test · #31 · 2017年1月04日

#29楼 @mrlijiayi 我也是一个刚接触IOS测试的人,我只是把我搭建的过程写了下来。MAC我也不怎么了解。所以对于我搭建没遇见过得情况。我也不知道哈😋

283
softblank · #32 · 2017年1月04日

楼主,运行

sh ./Scripts/bootstrap.sh -d

时报错:

-e Fetching dependencies
*** Downloading peertalk.framework binary at "v1.0"
*** Downloading RoutingHTTPServer.framework binary at "v1.0.1"
*** xcodebuild output can be found in /var/folders/4p/v2qk4vf96_53_zd5tg7gw8v80000gn/T/carthage-xcodebuild.HJRAdb.log

我前面的安装都没有问题

9673
appium_test · #33 · 2017年1月04日

#32楼 @softblank 从日志上来看确定是否正确安装好carthage。

11652
13564521636 · #34 · 2017年1月04日

/usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent-master/WebDriverAgentLib/Routing/FBHTTPOverUSBServer.m:13:9: 'RoutingHTTPServer/RoutingHTTPServer.h' file not found xcode运行时报这个错是什么原因

593
joker · #35 · 2017年1月04日

cnpm install -g appium@1.6.3

卡到这里很久了,有没有好的办法?
info Selendroid Downloading Selendroid standalone server version 0.17.0 from http://repo1.maven.org/maven2/io/selendroid/selendroid-standalone/0.17.0/selendroid-standalone-0.17.0-with-dependencies.jar --> /usr/local/lib/node_modules/appium/node_modules/.1.5.0@appium-selendroid-driver/selendroid/download/selendroid-server-7cf7163ac47f1c46eff95b62f78b58c1dabdec534acc6632da3784739f6e9d82.jar

7551
doris_cheung · #36 · 2017年1月04日

#35楼 @joker 最好翻墙后,在安装

11362
Tank007 · #37 · 2017年1月04日

#36楼 @doris_cheung 开着lantern,也是卡在@joker那里,昨天偶然成功了,今天手贱又试了一下,再也过不去了

96
lmlucky · #38 · 2017年1月04日

Check dependencies
2017-01-04 15:31:49.002 xcodebuild[9050:831581] Error Domain=IDETestOperationsObserverErrorDomain Code=3 "Test operation was canceled. If you believe this error represents a bug, please attach the log file at /Users/meiliu/Library/Developer/Xcode/DerivedData/WebDriverAgent-hdfgyfvxzzcnljgmksmzwafvohrd/Logs/Test/D451C4A1-B317-4C3A-8C3D-9C79A2B43685/Session-WebDriverAgentRunner-2017-01-04_153147-YM31XF.log" UserInfo={NSLocalizedDescription=Test operation was canceled. If you believe this error represents a bug, please attach the log file at /Users/meiliu/Library/Developer/Xcode/DerivedData/WebDriverAgent-hdfgyfvxzzcnljgmksmzwafvohrd/Logs/Test/D451C4A1-B317-4C3A-8C3D-9C79A2B43685/Session-WebDriverAgentRunner-2017-01-04_153147-YM31XF.log}
The file “ProjectSettings.xcconfig” couldn’t be opened because there is no such file. (/usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent/Configurations/ProjectSettings.xcconfig)
Signing for "WebDriverAgentRunner" requires a development team. Select a development team in the project editor.
Code signing is required for product type 'UI Testing Bundle' in SDK 'iOS 10.2'
Signing for "WebDriverAgentRunner" requires a development team. Select a development team in the project editor.
Code signing is required for product type 'UI Testing Bundle' in SDK 'iOS 10.2'
Signing for "WebDriverAgentRunner" requires a development team. Select a development team in the project editor.
Code signing is required for product type 'UI Testing Bundle' in SDK 'iOS 10.2'
Code signing is required for product type 'UI Testing Bundle' in SDK 'iOS 10.2'

Testing failed:
Signing for "WebDriverAgentRunner" requires a development team. Select a development team in the project editor.
Code signing is required for product type 'UI Testing Bundle' in SDK 'iOS 10.2'
** TEST FAILED **

The following build commands failed:
Check dependencies
(1 failure)

编译通过,但运行xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=真机的udid' test时报错,不知@appium_test 有没有遇到过这种情况

593
joker · #39 · 2017年1月04日

#36楼 @doris_cheung 开了VPN还是不行,公司的网速是有多垃圾呀 。😭

11652
13564521636 · #40 · 2017年1月04日

#38楼 @lmlucky 和你一样的问题,求解决

2549
alex_sheng · #41 · 2017年1月04日

#35楼 @joker 前两天也遇到和你一样的问题,挂着VPN多次重试也不行,后来按照http://blog.csdn.net/zdhsoft/article/details/53883788反复试了下,就装好了,你可以试试看吧。。。

9673
appium_test · #42 · 2017年1月04日

#38楼 @lmlucky 你的日志错误很明确。


你没有用appleID账户或者开发者账号去编译他。我12步截图中提到到选择appleID或者开发者账号,应该能解决此问题

9673
appium_test · #43 · 2017年1月04日

#35楼 @joker 如果cnpm都因为网络问题安装失败。建议用传统的老方法,配置npm镜像。再去npm install -g appium。我在实际测试中发现用cnpm比npm下载成功的几率大得多。所以才建议用cnpm。

11652
13564521636 · #44 · 2017年1月05日

#42楼 @appium_test 用apple账户编译了,编译成功,终端执行的时候还是报错

283
softblank · #45 · 2017年1月05日

#33楼 @appium_test 搞定了,我贴出来的那个不算是报错,只是xcode的一个log文件没有找到,不过我安装

gem install xcpretty

的时候没有任何响应,我怀疑是pods没有装好,于是又有吧cocoapods 写了重新装了一遍,现在appium和WDA都好了,不过之前的脚本都费了,好像元素的获取方式变了,现在不知道有没有关于新的api的python脚本demo😀

11652
13564521636 · #46 · 2017年1月05日

#11楼 @appium_test 1.6.3是不是只能测试9.0以上的版本,以下的不兼容

11652
13564521636 · #47 · 2017年1月05日

#43楼 @appium_test 定位元素用什么工具现在

9673
appium_test · #48 · 2017年1月05日

#47楼 @13564521636 启动成功之后用Safari 打开http://localhost:8100/inspector

9673
appium_test · #49 · 2017年1月05日

#46楼 @13564521636 我现在的真机只有9以上的,对于9以下的我没有试过。

11652
13564521636 · #50 · 2017年1月05日

#49楼 @appium_test
我现在一直卡在这个界面,手机应用打开黑屏,请问什么情况

96
XwhiteX · #51 · 2017年1月05日

@appium_test
[MJSONWP] Encountered internal error running command: Error: Xcode version [object Object] is not yet supported

提示xcode版本不支持 目前xcode版本是8.2

有解决的办法吗?
求大神帮忙!!!

283
softblank · #52 · 2017年1月05日

@appium_test 我这边连上真机后启动WDA但是无法通过safari 进行访问查看元素:我仔细看了下WDA的运行日志有如下问题

2017-01-05 16:16:26.256709 XCTRunner[305:38453] Running tests...
2017-01-05 16:16:27.171236 XCTRunner[305:38453] Continuing to run tests in the background with task ID 1
Test Suite 'All tests' started at 2017-01-05 16:16:28.506
Test Suite 'WebDriverAgentRunner.xctest' started at 2017-01-05 16:16:28.509
Test Suite 'UITestingUITests' started at 2017-01-05 16:16:28.511
Test Case '-[UITestingUITests testRunner]' started.
    t =     0.00s     Start Test at 2017-01-05 16:16:28.516
    t =     0.01s     Set Up
2017-01-05 16:16:28.526708 XCTRunner[305:38462] [User Defaults] Failed to write value for key AutomationDisableFauxCollectionCells in CFPrefsPlistSource<0x1700f4c80> (Domain: com.apple.Accessibility, User: kCFPreferencesCurrentUser, ByHost: No, Container: (null)): setting preferences outside an application's container requires user-preference-write or file-write-data sandbox access, switching to read-only
2017-01-05 16:16:28.528188 XCTRunner[305:38453] Built at Jan  4 2017 15:16:47
2017-01-05 16:16:28.582963 XCTRunner[305:38453] ServerURLHere->http://10.252.164.253:8100<-ServerURLHere
2017-01-05 16:16:28.583873 XCTRunner[305:38453] Listening on USB

倒数第4行的日志显示我没有写权限,不知道这个是不是对获取元素空间有影响

9673
appium_test · #53 · 2017年1月05日

#50楼 @13564521636 WDA服务运行的时候就是一个黑屏


我觉得你应该重启下你的iphone和MAC

9673
appium_test · #54 · 2017年1月05日

#52楼 @softblank 我大胆猜测是不是和手机的开发者设置有一些关系。

96
lunamagic · #55 · 2017年1月06日

@softblank Fetching dependencies
*** Downloading peertalk.framework binary at "v1.0"
*** Downloading RoutingHTTPServer.framework binary at "v1.0.1"
*** xcodebuild output can be found in /var/folders/g9/z52tkkys3v12z0zp1ngm5rg80000gn/T/carthage-xcodebuild.mOHzTn.log

前面看到你也遇上了这个问题,
你的解决方法是
我怀疑是pods没有装好,于是又有吧cocoapods 写了重新装了一遍,现在appium和WDA都好了

这个我没有接触过,能否说的详细点。

283
softblank · #56 · 2017年1月06日

#55楼 @lunamagic 这个应该太影响,貌似是XCODE的输出的时候要找的一个日志文件,应该不影响,我后来重新弄了cococaPods还有rvm脚本就过去了,没太注意了。你具体现在什么问题

283
softblank · #57 · 2017年1月06日

#54楼 @appium_test 我现在的疑问有两个,第一是我用

cd  /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=真机的udid' test

在我自己的手机里是运行总卡在

2017-01-05 16:16:26.256709 XCTRunner[305:38453] Running tests...
2017-01-05 16:16:27.171236 XCTRunner[305:38453] Continuing to run tests in the background with task ID 1
Test Suite 'All tests' started at 2017-01-05 16:16:28.506
Test Suite 'WebDriverAgentRunner.xctest' started at 2017-01-05 16:16:28.509
Test Suite 'UITestingUITests' started at 2017-01-05 16:16:28.511
Test Case '-[UITestingUITests testRunner]' started.
    t =     0.00s     Start Test at 2017-01-05 16:16:28.516
    t =     0.01s     Set Up

我用我们测试的手机系统版本10.0.2是可以运行起来WDA的,但是无法查看元素,(WDA起在了手机上,通过手机浏览器访问)
浏览器中显示
"value": "Unhandled endpoint: / -- http://localhost:8100/ with parameters {\n wildcards = (\n \"\"\n );\n}",
输入http://localhost:8100/inspector 后同样返回一串Json status:13 有错误 (模拟器也是如次)

我现在只有一个手机10.0.2 的iOS可以,10.1.1的两个手机(5s,6s plus)的不行,我怀疑是WDA对10.1及以上系统支持有问题;
我的环境:
xcode 8.1
node 5.0.0
pods 1.1.1
appium 1.6.3(和这个没毛线关系)

104
seveniruby · #58 · 2017年1月06日

记得更新自己的微信打赏二维码或者个人微信, 你已经错过10元打赏. 暂时不支持支付宝.

96
lunamagic · #59 · 2017年1月07日

@softblank 完全同意你的猜想,我在iPad 9.3.5 上可以启动,但是在我手机上 10.1.1 上和你一样 卡在setup 。 我在webdriveragent上也找到了类似的问题,但是好像还没有解决。
https://github.com/facebook/WebDriverAgent/issues/429

96
helenakeep · #60 · 2017年1月08日

你好,pom.xml可不可以分享一下?好像maven自动引入的有些问题。非常感谢

9673
appium_test · #61 · 2017年1月08日

#60楼 @helenakeep 我用的.net

9673
appium_test · #62 · 2017年1月09日

#59楼 @lunamagic 今天特地升了10.2,确实有这个问题。怎么这么坑爹啊

11652
13564521636 · #63 · 2017年1月09日

#62楼 @appium_test 10.1.1是有问题是吗?

2506
jira · #64 · 2017年1月09日

个人证书只有7天有效期,你的是吗?

9673
appium_test · #65 · 2017年1月09日

#63楼 @13564521636 我直接升到10.2的,确实有问题。WDA的问题。服务会卡在Setup那。

11652
13564521636 · #66 · 2017年1月09日

#62楼 @appium_test 10和10.2都正常是把

5411
junewang · #67 · 2017年1月09日

#17楼 @lunamagic 你真机运行的问题,解决了吗?

9673
appium_test · #68 · 2017年1月10日

#66楼 @13564521636 10.2也不行和59楼的情况一样的。

9673
appium_test · #69 · 2017年1月10日

#67楼 @junewang 等BUG修复呢 ,这个应该更以前一样。那时候说测IOS并行的时候也是BUG多的不得了。所以坐等。等哪个大神发帖额

96
2hangying · #70 · 2017年1月10日

提示xcode版本不支持 目前xcode版本是8.2@XwhiteX解决了吗

96
XwhiteX · #71 · 2017年1月10日

#70楼 @2hangying 还木有 同求解!!

11652
13564521636 · #72 · 2017年1月10日

#69楼 @appium_test 那现在那个版本能运行呢- - 还是说10以上的版本都有问题

73楼 已删除
74楼 已删除
9378
lrw3716740 · #75 · 2017年1月10日

我命令行装appium已经调通了,模拟器连接的都已经调通了,但是怎么能在一边使用appium的时候,一遍看IOS 手机上界面元素结构呢?因为我写case需要看,难道大家都没有这个疑惑?

283
softblank · #76 · 2017年1月10日

#62楼 @appium_test @lunamagic 我还被同事说是设备证书的问题呢,我感觉这个好坑,关键是我们公司的QA和RD都特跟的上环境,几乎所有的设备统统升级到最新,苹果的新版本兼容是要测试,但也不能都给... 不过这个问题先放下不说,我觉得很多同仁都会遇到我的 #57 楼的第二个问题:
如何获取元素?如果WDA运行在了真机上,那就要去真机的safari上的server地址去查看(模拟器在PC上的地址打开),可是这个inspector返回的json是有异常的,这个我很不解,有没有趟过坑的朋友站出来分享下,我最早FB刚出WDA的时候用过,那时候WDA还是要在xcode运行起来,inspector没有问题的

283
softblank · #77 · 2017年1月10日
*** Assertion failure in -[FBResponseFilePayload initWithFilePath:], /usr/local/lib/node_modules/appium/node_modules/.2.5.1@appium-xcuitest-driver/WebDriverAgent/WebDriverAgentLib/Routing/FBResponseFilePayload.m:24

我请求inspector报错信息如上

2562
carl · #78 · 2017年1月10日

@appium_test @seveniruby
楼主,思寒哥你们好,请教一个问题,我发现在使用appium1.6.3版本的时候,无法再使用原来的uiautomation来测试iOS9.0以下版本的手机了,请问你们是怎么做的?这里是否可以兼容呢?

感谢

9673
appium_test · #79 · 2017年1月11日

#78楼 @carl 不能兼容,因为Xcode8以后就移除了Instruments。

4365
neyo · #80 · 2017年1月11日

#79楼 @appium_test 今天验证了下,bundleid不用改,重签名下就可以了,可以试一下~./Scripts/bootstrap.sh -d appium自己会去做啊,觉得没必要去手动做一遍

13975
snow.xue · #81 · 2017年1月11日

@appium_test 一直卡在这个地方是什么原因

283
softblank · #82 · 2017年1月11日

@appium_test @lunamagic #62楼的问题有解码?

14269
wangqingbinSunday · #83 · 2017年1月11日

gem install xcpretty安装时弹出以下提示怎么破?
ERROR: Could not find a valid gem 'xcpretty' (>= 0) in any repository

9673
appium_test · #84 · 2017年1月11日

今天测了10.2的模拟器,完全没问题。10.2的真机WDA起不来。

9673
appium_test · #85 · 2017年1月11日

#80楼 @neyo 那就更好了。我本来就觉得这配置很麻烦

4365
neyo · #86 · 2017年1月11日

#85楼 @appium_test 是呀,不断在优化。1.6.0的时候还要手动去指定realldevicelog的路径,指定xcodeConfigFile,比较麻烦

1134
weamylady · #87 · 2017年1月12日

我按照楼主的步骤都安装了,但是真机上跑不起来,报Unable to start WebDriverAgent
说idevicedate命令执行失败,我单独跑idevicedate -u udid的时候也的确报Could not connect to lockdown, error code -21
手机发帖发不了图片?

2265
mads · #88 · 2017年1月13日

appium1.6.3没有dmg那怎么查看页面元素啊

6290 u1449475793 [公告] App Inspector 重磅升级 中提及了此贴 1月13日 16:51
9673
appium_test · #90 · 2017年1月14日


真机10.2的问题官方给我的回复这样的。这几天都太忙。没时间研究了

96
fuheperpromise · #91 · 2017年1月16日

#38楼 @lmlucky 解决了吗

96
fuheperpromise · #92 · 2017年1月16日

#75楼 @lrw3716740 你说的这个问题怎么解决啊

1134
weamylady · #93 · 2017年1月16日

87楼的问题已解决,全部重装下就好了。现在卡在最后一步了,WebdriverAgent server没反应,@appium_test,请问你遇到过吗?一直卡在这个日志上面等待。

96
doye · #94 · 2017年1月17日

#93楼 @weamylady 这个问题你先查查日志上面然后应该会有报错,然后根据报错解决
在我印象里应该是WebDriverAgent没编译好的原因,大约是

cd /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/
carthage update

然后证书记得配好(Lib和Runner) Run一下

还有的可能的是安装libimoiledevice 在iOS10以上一定要带 --HEAD,不是的话卸了装一下它

brew install libimobiledevice --HEAD 

Hope it works 😄

96
doye · #95 · 2017年1月17日

#88楼 @mads 可以用别的项目。最简单用1.5的,先打开客户端,然后在命令行把Server起起来,然后在客户端不要点Launch点击Inspector就暂时可以用了。

96
doye · #96 · 2017年1月17日

#81楼 @snow.xue 因为服务端好像配好了,但是还少了客户端呀~就是到底想让它跑什么东西,参考官方的各语言示例 😄

96
tfzhou · #97 · 2017年1月17日

您好,执行第10步的时候一直卡在这个位置,
接下来怎么操作?

96
tfzhou · #99 · 2017年1月17日

#98楼 @doye 您好,有联系方式吗?我加你,我qq 1749281699 周腾飞,急求,谢谢

96
seven9t · #100 · 2017年1月17日

非常感谢楼主大大的分享,通过这个帖子,我之前废掉的脚本又跑起来咯~~~

96
doye · #101 · 2017年1月17日

#99楼 @tfzhou 如果是我遇到那个问题我也无解的,目前可能的方案就是拿 npm cnpm 然后翻墙/非翻墙环境 一直试,然后卡了就 ctrl-c 断重新拿命令装这样子,不用qq噢。

1134
weamylady · #102 · 2017年1月17日

#94楼 @doye 我试了一下9.3版本的,是可以正常运行:Test Suite 'All tests' started at 2017-01-17 15:34:05.068

Test Suite 'All tests' started at 2017-01-17 15:34:05.068
Test Suite 'WebDriverAgentRunner.xctest' started at 2017-01-17 15:34:05.070
Test Suite 'UITestingUITests' started at 2017-01-17 15:34:05.071
Test Case '-[UITestingUITests testRunner]' started.
    t =     0.00s     Start Test at 2017-01-17 15:34:05.075
    t =     0.00s     Set Up
2017-01-17 15:34:05.084 XCTRunner[17244:14680309] Built at Jan 16 2017 17:26:34
2017-01-17 15:34:05.121 XCTRunner[17244:14680309] ServerURLHere->http://99.12.198.98:8100<-ServerURLHere
2017-01-17 15:34:05.122 XCTRunner[17244:14680309] Listening on USB```

看来我的问题也是跟楼上一样,10.1.1上无法执行的bug,坐等解决吧TAT

96
seven9t · #103 · 2017年1月17日

#95楼 @doye 这个方法非常好,感谢~

96
tfzhou · #104 · 2017年1月17日

#75楼 @lrw3716740 你是怎么安装调试环境的?能帮忙看一下吗?留下联系方式,加你。谢谢

96
tfzhou · #105 · 2017年1月17日

#35楼 @joker 这个问题你解决了吗?我现在也是这个情况。。。能解决的大神帮忙指点一下吧,谢谢。

96
tfzhou · #106 · 2017年1月17日

楼主,第6步怎么执行?下载哪一个?

96
unlimitedcode · #107 · 2017年1月17日

楼主,想问下用appium1.6.3+xcode8+IOS10.0.2,真机测试的case能用python嘛?

1134
weamylady · #108 · 2017年1月18日

#57楼 @softblank 我也是跟你一样的问题哎……我在9.3上的iPad上虽然有listening on usb,但是打开wad的url一样也是报错。

8317
utopia · #109 · 2017年1月18日

我使用 xcode 8.2 simulator iphone6s iOS 9.3 http://172.30.171.244:8100/inspector 也报错

status source screenshot 这几个是正常的

{
"value" : "Invalid parameter not satisfying: path\n\n(\n\t0 CoreFoundation 0x0000000108a6dd85 __exceptionPreprocess + 165\n\t1 libobjc.A.dylib 0x00000001084e1deb objc_exception_throw + 48\n\t2 CoreFoundation 。。。。。。",
"sessionId" : "27DEE885-7AE8-4412-9218-2420C71AC6AF",
"status" : 13
}

报错日志,看不懂是什么意思
t = 0.00s Start Test at 2017-01-18 14:28:36.426
t = 0.00s Set Up
2017-01-18 14:28:36.429 XCTRunner[2482:99432] Built at Jan 18 2017 11:52:54
2017-01-18 14:28:36.442 XCTRunner[2482:99432] ServerURLHere->http://172.30.171.244:8100<-ServerURLHere
t = 4.06s Find the Application "local.pid.2446" 0x7fec1c861de0
t = 4.06s Snapshot accessibility hierarchy for local.pid.2446
2017-01-18 14:33:16.813 XCTRunner[2482:99432] *** Assertion failure in -[FBResponseFilePayload initWithFilePath:], /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgentLib/Routing/FBResponseFilePayload.m:24
2017-01-18 14:34:47.425 XCTRunner[2482:99432] *** Assertion failure in -[FBResponseFilePayload initWithFilePath:], /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgentLib/Routing/FBResponseFilePayload.m:24

96
qi7 · #110 · 2017年1月19日

@appium_test
iphone 6s plus ios 10.1.1
大家好 13步的时候
writeDictToFile:1278 ==== Successfully wrote Manifest cache to /var/folders/2s/jfjfzxb97191rgh80hqm_9yw0000gp/C/com.apple.DeveloperTools/All/Xcode/EmbeddedAppDeltas/WebDriverAgentRunner-Runner.app.TP35YO/WebDriverAgentRunner-Runner.app_sparse.ipa/ManifestCache.plist
Test Suite 'All tests' started at 2017-01-19 14:06:38.163
Test Suite 'WebDriverAgentRunner.xctest' started at 2017-01-19 14:06:38.165
Test Suite 'UITestingUITests' started at 2017-01-19 14:06:38.166
Test Case '-[UITestingUITests testRunner]' started.
t = 0.00s Start Test at 2017-01-19 14:06:38.169
t = 0.00s Set Up
Killed: 9
被kill掉了 ,求大神解答下

96
qi7 · #111 · 2017年1月19日

#50楼 @13564521636
你好 ,在下面那个位置一直停留的问题解决了吗?是iOS10.1.1的系统不行的问题吗?10.2可以不
Test Suite 'All tests' started at 2017-01-19 14:06:38.163
Test Suite 'WebDriverAgentRunner.xctest' started at 2017-01-19 14:06:38.165
Test Suite 'UITestingUITests' started at 2017-01-19 14:06:38.166
Test Case '-[UITestingUITests testRunner]' started.
t = 0.00s Start Test at 2017-01-19 14:06:38.169
t = 0.00s Set Up

96
yefnegjun · #112 · 2017年1月19日

#102楼 @weamylady 我也是用9.3的真机可以运行,但是真机上wda打开之后就自动退到后台了,打开wda是黑屏的 第一次接触这个不太懂怎么用。你那也是这样的吗?

96
yefnegjun · #113 · 2017年1月20日

#48楼 @appium_test 您好,请问一下我在用safari访问http://172.16.23.2:8100 显示正常

{
"value" : "Unhandled endpoint: \/ -- http:\/\/172.16.23.2:8100\/ with parameters {\n wildcards = (\n \"\"\n );\n}",
"sessionId" : "AE6BF076-84FD-4C1C-8199-ABD2B3595E86",
"status" : 1
}
但是访问http://172.16.23.2:8100/inspector的时候浏览器中什么都没显示,没有显示页面元素啊。这是为什么呢?

96
tfzhou · #114 · 2017年1月20日

#81楼 @snow.xue 怎样了?我也是这样。卡在这里了

96
tfzhou · #115 · 2017年1月20日

楼主辛苦了,遇到了这两个问题,

96
tfzhou · #116 · 2017年1月20日

#100楼 @seven9t 您好,能留一个联系方式吗?求帮忙,谢谢。

96
xlth1947 · #117 · 2017年1月20日

求解@yefengjun,你的解决了吗?

96
xlth1947 · #118 · 2017年1月20日

1.6.3还支持python脚本吗?各位大神求解啊!

96
yefnegjun · #119 · 2017年1月20日

#117楼 @xlth1947 没有解决,我重新在git上下了一个WebDriverAgent跑了一下 终端上信息是:

2017-01-20 12:23:01.818 XCTRunner[6819:524048] *** Assertion failure in -[FBResponseFilePayload initWithFilePath:], /Users/yefengjun/Downloads/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgentLib/Routing/FBResponseFilePayload.m:24

你跟我的情况一样吗?

96
yxrs89 · #120 · 2017年1月20日

@utopia 我跟你报的错是一样的
XCTRunner[2482:99432] *** Assertion failure in -[FBResponseFilePayload initWithFilePath:], /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgentLib/Routing/FBResponseFilePayload.m:24
XCTRunner[2482:99432] *** Assertion failure in -[FBResponseFilePayload initWithFilePath:], /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgentLib/Routing/FBResponseFilePayload.m:24
后来你解决了吗

8317
utopia · #121 · 2017年1月20日

@yxrs89 没有解决,估计是官网的bug,只能坐等

96
xlth1947 · #122 · 2017年1月21日

@yefnegjun 我之前是没有文件,重新下载后也是这样,完全懵逼。。。。

96
seven9t · #123 · 2017年1月21日

#116楼 @tfzhou 有什么问题直接在这里问吧,大家还可以一起看看,你现在是卡在哪里。

96
yefnegjun · #124 · 2017年1月22日

@appium_test 请问使用WebDriverAgent的话是不是必须要有测试app的源码啊?xcodebuild -project 必须得是.xcodeproj文件吗?

96
yxrs89 · #125 · 2017年1月22日

@yefnegjun @appium_test 我也想问这样问题,如果是打包后的ipa形式的可以吗

96
yefnegjun · #126 · 2017年1月22日

#125楼 @yxrs89 我也是刚开始接触移动端APP的自动化测试,也不太清楚= =不好意思。我们这里开发一般不会给我们源码,挺麻烦的。之前再学习怎么用appium就因为跑不起来暂时就没搞。看看楼主怎么说吧

96
yxrs89 · #127 · 2017年1月22日

@yefnegjun 哈哈,你得情况跟我一样,不怕见笑,之前都没用过mac电脑我也是刚开始接触这块,什么证书编译全都不懂,android很方便可以直接用APK,我们得开发也不给源码。所以不知道ipa可不可以直接用。如果不行得话,看来要自己学着写个app包来测试了

4863
among29 · #128 · 2017年1月22日

在使用真机调试的时候,签名按照说明都设置过了,
运行xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination 'id=xxxxxxxxxxxxxxxxxxxxxxxxxx' test

最后提示:

The following build commands failed:
CodeSign /Users/among/Library/Developer/Xcode/DerivedData/WebDriverAgent-brdadhpuduowllgivnnvuygpwhzy/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework/Frameworks/RoutingHTTPServer.framework
CodeSign /Users/among/Library/Developer/Xcode/DerivedData/WebDriverAgent-brdadhpuduowllgivnnvuygpwhzy/Build/Products/Debug-iphoneos/WebDriverAgentLib.framework/Frameworks/Peertalk.framework
(2 failures)

这两个也需要签名,感觉不需要啊。

96
yefnegjun · #129 · 2017年1月22日

#127楼 @yxrs89 我觉得最后可能就像楼主这样 用Appium启动的话应该用debug的就行了 等节后回来找开发要个debug版的ipa装一下试试。都是新手,多交流吧

96
yxrs89 · #130 · 2017年1月22日

@yefnegjun 好的,兄弟能否留个QQ以便后面一起交流学习

96
yefnegjun · #131 · 2017年1月22日

#130楼 @yxrs89 刚看到 450968560 我qq

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册