【问题标题】:Appium error: uncaughtException: Cannot read property 'executeAtom' of nullAppium 错误:uncaughtException:无法读取 null 的属性“executeAtom”
【发布时间】:2015-08-04 10:43:38
【问题描述】:

我正在使用 Selenium 进行 iOS 移动应用程序测试。我正在使用各自的

  1. Appium version 1.3.7
  2. Node JS version 2.7.5
  3. ios webkit debug proxy
  4. iPhone 5c
  5. Xcode version 6.1

我正在使用一个 shell 脚本来帮助我检查 ios_webkit_debug_proxy 是否可用。如果不存在,则在 2 秒内启动 ios_webkit_debug_proxy。

我的测试运行良好。但是在appium中仍然面临一些问题,Appium肯定会停止uncaught exception: Cannot read property 'executeAtom' of null

我尝试过各种方式来解决。

  1. 重新启动 Appium 并再次运行。
  2. 将 appium 版本更新到稳定的最新版本 1.4.0。但是 错误仍然存​​在。
  3. 更新 Node JS。
  4. Xcode 总是在运行执行时打开。
  5. 在每个 WebDriverWait 发生之前取消隐式等待。 链接:http://chon.techliminal.com/ajax_wait/#/intro
  6. 在每个相关类中使用 java 未捕获的异常处理程序。关联: https://bharatonjava.wordpress.com/2012/09/04/uncaughtexceptionhandler-in-java/

但仍然存在错误。 您能建议我如何解决这个问题吗?

为了您更好地理解,我附上下面的日志文件。

info: [debug] [REMOTE] 发送 javascript 命令
info: [debug] [REMOTE] 远程调试器数据发送 [{"method":"Runtime.evaluate","params":{"objectGroup":"console","includeCommandLineAPI":true,"doNotPauseOnExceptionsAndMuteConsole":true,"表达式":"(函数(){返回函数(){函数h(a){返回...]
调试器 web socket 收到数据:{"result":{"result":{"type":"string","value":"{\"status\":0,\"value\":[]}"} ,"wasThrown":false},"id":57}
信息:[调试] 到目前为止等待了 7659 毫秒
信息:--> POST /wd/hub/session/d102c79f-f695-4fbb-a020-45caf2af7b05/context {"name":"NATIVE_APP"}
信息:[调试] 尝试将上下文设置为 'NATIVE_APP'
信息:[调试]成功响应客户端:{"status":0,"value":"","sessionId":"d102c79f-f695-4fbb-a020-45caf2af7b05"}
信息:POST /wd/hub/session/d102c79f-f695-4fbb-a020-45caf2af7b05/context {"name":"NATIVE_APP"}

信息:[调试] 尝试将上下文设置为 'NATIVE_APP'
信息:[调试]成功响应客户端:{"status":0,"value":"","sessionId":"d102c79f-f695-4fbb-a020-45caf2af7b05"}
信息:POST /wd/hub/session/d102c79f-f695-4fbb-a020-45caf2af7b05/context 200 0.862 ms - 74 {"status":0,"value":"","sessionId":"d102c79f-f695-4fbb -a020-45caf2af7b05"}
错误:uncaughtException:无法读取空日期的属性“executeAtom”=2015 年 5 月 22 日星期五 11:40:38 GMT+0600 (BDT),pid=9153,uid=501,gid=20,cwd=/Applications/Appium.app /Contents/Resources/node_modules/appium, execPath=/Applications/Appium.app/Contents/Resources/node/bin/node, version=v0.12.1, argv=[/Applications/Appium.app/Contents/Resources/node/ bin/node, /Applications/Appium.app/Contents/Resources/node_modules/appium/lib/server/main.js, --command-timeout, 7200, --platform-version, 7.1, --platform-name, iOS , -  putter, -  dudid,0b72ccc692943f83fa2f83078b3030a760fa5f,--device-name,iPhone 5],RSS = 218198016,Healpused = 187542272,Loadavg = [1.51611328125,1.689453125,1.67431640625],正常运行时间=71672,跟踪=[列=14,文件=/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios-controller.js,
 功能=iOSController.executeAtom,行=647,方法=executeAtom,本机=false,列=10,文件=/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios-controller.js ,
  函数=,行=311,方法=null,本机=假,列=13,文件=/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/common.js,
   函数=,行=90,方法=null,本机=假,列=5,文件=/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/common.js,
    函数=,行=66,方法=null,本机=假,列=15,文件=timers.js,函数=Timer.listOnTimeout,行=110,方法=listOnTimeout,本机=假],
 stack = [TypeError:无法读取null的属性'executeAtom',
      在 iOSController.executeAtom (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios-controller.js:647:14),
           在空。 (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/ios/ios-controller.js:311:10),
                在空。 (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/common.js:90:13),
                     在空。 (/Applications/Appium.app/Contents/Resources/node_modules/appium/lib/devices/common.js:66:5),
                          在 Timer.listOnTimeout (timers.js:110:15)]

【问题讨论】:

  • 您介意将 appium 更新到最新版本 1.4.1 并再次检查问题。他们在最近两个版本中进行了许多错误修复。如果您尝试一下,请告诉我们结果。
  • 我已经更新到 1.4.0 稳定版。但它像往常一样失败了。没有进展@Vvvaib

标签: javascript ios automated-tests appium ios-ui-automation


【解决方案1】:

请点击 github 中的此链接。由于异步错误,我有一个正在发生的解决方案。

https://github.com/appium/appium/issues/5177

【讨论】:

    猜你喜欢
    • 2015-03-29
    • 2021-11-07
    • 2017-06-07
    • 1970-01-01
    • 1970-01-01
    • 2022-07-27
    • 2021-12-03
    • 2020-03-27
    • 2020-02-04
    相关资源
    最近更新 更多