【发布时间】:2015-09-24 04:43:34
【问题描述】:
我一直在尝试从应用程序的本机上下文访问 web 视图,但由于以下错误而无法访问。
WebDriverException:消息:处理命令时发生未知的服务器端错误。 (原始错误:没有从 Chromedriver 获得会话重定向)
我尝试在具有多种配置(包括4.4.2、5.1 和4.3)的安卓模拟器上使用appium 1.3.7.2 运行我的脚本。这三个似乎都不起作用,而且他们抛出了同样的错误。
我也研究过:
https://code.google.com/p/chromedriver/issues/detail?id=845&thanks=845&ts=1404927199
然后按照几个步骤,更改了 chromedriver 二进制文件,但没有成功。
我有多个 webviews,但我认为这不应该是这里的问题。有人可以帮我吗?
请查看以下堆栈跟踪:
o: [debug] 执行 cmd: C:\Users***\AppData\Local\Android\sdk\platform-tools\adb.exe -s emulator-5554 shell "ps"
信息:[调试] WEBVIEW_2767 映射到 pid 2767 info: [debug] 获取 webview 的进程名称 信息:[调试] 执行 cmd:C:\Users***\AppData\Local\Android\sdk\platform-tools\adb.exe -s emulator-5554 shell "ps" 信息:[调试] 解析的 pid:2767 pkg:* 信息:[调试]来自:u0_a53,2767,944,800448,111104,ffffffff,b75152d2,S, 信息:[调试] 返回进程名称: 信息:[调试] 解析的 pid:2785 pkg: 信息:[调试]来自:u0_a53,2785,944,593196,52692,ffffffff,b7577355,S, info: [debug] 返回进程名称: 信息:[调试] 可用上下文:NATIVE_APP,, 信息:[调试] ["WEBVIEW_","WEBVIEW_"] 信息:[调试] 可用上下文:NATIVE_APP、WEBVIEW_、WEBVIEW_ 信息:[调试] 连接到 chrome 支持的 webview 信息:[调试] 创建 Chrome 会话 信息:[调试] 将 chromedriver 二进制设置为:C:\Program Files (x86)\Appium\node_modules\appium\build\chromedriver\windows\chromedriver.exe info: [debug] 确保 Chromedriver 存在 信息:[调试] 杀死任何旧的 chromedrivers,运行: FOR /F "usebackq tokens=5" %a in (
netstat -nao ^| findstr /R /C:"9515 ") do (FOR /F "usebackq" %b in (TASKLIST /FI "PID eq %a" ^| findstr /I chromedriver.exe) do (IF NOT % b=="" TASKKILL /F /PID %b)) 信息:[调试] 似乎不存在旧的 chromedrivers 信息:[调试] 生成 chromedriver:C:\Program Files (x86)\Appium\node_modules\appium\build\chromedriver\windows\chromedriver.exe 信息:[调试] [CHROMEDRIVER] 在端口 9515 上启动 ChromeDriver (v2.10.289383) 只允许本地连接。 info: [debug] 使用 opts 发出 http 请求:{"url":"http://127.0.0.1:9515/wd/hub/session","method":"POST","json":{"sessionId":null,"desiredCapabilities":{"chromeOptions": {"androidPackage":"","androidUseRunningApp":true,"androidDeviceSerial":"emulator-5554"}}}} 信息:[调试]响应客户端错误:{“状态”:13,“值”:{“消息”:“处理命令时发生未知的服务器端错误。(原始错误:没有从Chromedriver)","origValue":"没有从 Chromedriver 获得会话重定向"},"sessionId":"ac576cc4-fea0-450d-a4bf-f2b5f2ca9dc4"} 信息:"}] 信息:[调试] [CHROMEDRIVER STDERR] [0.008][严重]:无法将套接字绑定到 127.0.0.1:9515 信息:[调试] [CHROMEDRIVER] 端口不可用。退出... 信息:--> 删除 /wd/hub/session/ac576cc4-fea0-450d-a4bf-f2b5f2ca9dc4 {} 信息:关闭 appium 会话 信息:[调试] 按下 HOME 按钮 信息:[调试] 执行 cmd:C:\Users***\AppData\Local\Android\sdk\platform-tools\adb.exe -s emulator-5554 shell "input keyevent 3" 信息:[调试] Chromedriver 退出,代码为 1 信息:[调试] 停止 logcat 捕获 信息:[调试] Logcat 以代码 null 终止,信号 SIGTERM 信息:[调试] [BOOTSTRAP] [调试] 从客户端获取数据:{"cmd":"shutdown"} info: [debug] [BOOTSTRAP] [debug] 得到了 SHUTDOWN 类型的命令 信息:[debug] [BOOTSTRAP] [debug] 返回结果:{"status":0,"value":"OK,正在关闭"} info: [debug] [BOOTSTRAP] [debug] 关闭客户端连接 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:numtests = 1 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:流=。 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:id=UiAutomatorTestRunner 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:test=testRunServer 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:class=io.appium.android.bootstrap.Bootstrap 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:当前 = 1 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS_CODE:0 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS:流= 信息:[调试] [UIAUTOMATOR STDOUT] WatcherResultPrinter= 的测试结果。 信息:[调试] [UIAUTOMATOR STDOUT] 时间:53.474 信息:[调试] [UIAUTOMATOR STDOUT] OK(1 次测试) 信息:[调试] [UIAUTOMATOR STDOUT] INSTRUMENTATION_STATUS_CODE:-1 info: [debug] 发送关闭命令,等待 UiAutomator 停止... info: [debug] UiAutomator 正常关闭 信息:[调试] 清理 android 对象 info: [debug] 清理 appium 会话
【问题讨论】:
标签: android python android-webview appium selenium-chromedriver