识别在所有屏幕中禁用屏幕截图的Android应用程序的页面元素/对象

时间:2017-05-22 03:41:42

标签: android selenium uiautomator android-uiautomator

我正在使用银行应用程序(Android应用程序)。该应用不允许截屏。当我打开 UI Automator Viewer 并尝试截屏时,我收到以下错误:

  

'获取UI层次结构XML文件时出错:   com.android.ddmlib.SyncException:远程对象不存在!错误   获取UI层次结构XML文件时:   com.android.ddmlib.SyncException:远程对象不存在!'

我正在使用Appium + Selenium进行自动化。

问题:

  1. 有没有办法以编程方式激活屏幕截图 应用中的功能?

  2. 有没有办法在应用程序屏幕中找到根对象 以递归方式遍历所有子对象并打印它们 属性/属性(如PageObjectModel)?

  3. 请帮帮我。感谢。

1 个答案:

答案 0 :(得分:0)

通过以下步骤找出解决方法:

  1. 打开应用程序
  2. 使用driver.getPageSource()将网页来源设为字符串
  3. 解析页面源字符串并标识我需要使用的元素。然后以Page Object Model类
  4. 中的描述性方式存储元素的属性

    如果有人有更好的主意,请告诉我。感谢