Appium检查器将其加载动画停留在UI部分中,不允许获取当前的UI和元素。怎么可以绕过?
我正在Windows上使用真实的Android设备运行Appium 1.13.0,并尝试检查React本机应用程序。 检查器启动该应用程序并显示初始屏幕(环境选择器),并允许检查/选择元素,但是在点击后-它会显示加载动画并不会停止。 尝试刷新无济于事。 在设备本身上-应用已到达所需的屏幕。
在Appium的日志中,点击后会发生以下情况:
[MJSONWP (6564ecbb)] Responding to client with driver.click() result: true
[HTTP] <-- POST /wd/hub/session/6564ecbb-53f5-4c97-8456-f70f6ea3d747/element/1/click 200 141 ms - 76
[HTTP]
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Returning result: {"status":0,"value":true}
[HTTP] --> GET /wd/hub/session/6564ecbb-53f5-4c97-8456-f70f6ea3d747/source
[HTTP] {}
[MJSONWP (6564ecbb)] Calling AppiumDriver.getPageSource() with args: ["6564ecbb-53f5-4c97-8456-f70f6ea3d747"]
[HTTP] --> GET /wd/hub/session/6564ecbb-53f5-4c97-8456-f70f6ea3d747/screenshot
[HTTP] {}
[MJSONWP (6564ecbb)] Calling AppiumDriver.getScreenshot() with args: ["6564ecbb-53f5-4c97-8456-f70f6ea3d747"]
[AndroidBootstrap] Sending command to android: {"cmd":"action","action":"source","params":{}}
[HTTP] --> GET /wd/hub/session/6564ecbb-53f5-4c97-8456-f70f6ea3d747/window/current/size
[HTTP] {}
[MJSONWP (6564ecbb)] Calling AppiumDriver.getWindowSize() with args: ["current","6564ecbb-53f5-4c97-8456-f70f6ea3d747"]
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Got data from client: {"cmd":"action","action":"source","params":{}}
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Got command of type ACTION
[AndroidBootstrap] [BOOTSTRAP LOG] [debug] Got command action: source
答案 0 :(得分:0)
Appium Inspector似乎在获取页面源时遇到麻烦,请尝试重新启动设备/ Appium Desktop,并确保没有其他设备正在使用adb连接。
您还可以考虑使用提供设备UI检查功能的替代工具:
答案 1 :(得分:0)
答案 2 :(得分:0)
driver.FindElementByAndroidUIAutomator(“ UiSelector()。text(\” WHATEVER TEXT \“)”)。Click();
由于@Dmitri T的回复,我已经使用Appium Studio来检查元素-由于启动屏幕(我想),我以前无法检查这些元素。 后来,我仍然无法通过XPath和其他方法找到元素,再次-可能是由于启动屏幕。
最后的窍门是使用FindElementByAndroidUIAutomator。得到了用法列表here,最后我可以找到并单击。
我知道解决方案与原始问题的标题有些不同-但是这两种方法(Appium studio + FindElementByAndroidUIAutomator)为我的问题提供了解决方案。