iOS DOM树不代表屏幕上的对象

时间:2019-05-07 05:52:17

标签: ios dom appium

我有一个iOS应用,我正在尝试使用Appium在其上运行自动化测试。

我的某些测试失败,因为DOM树中缺少某些对象。但是当我看着模拟器屏幕时,我看到那些对象在那里。

什么可能造成这些差异?我什至不确定这是谁的错- 里面的iOS代码不好吗?是苹果的错吗?还是Appium的错?

我们将不胜感激

1 个答案:

答案 0 :(得分:0)

考虑到您的反馈后,可能有多个原因导致某个元素没有出现在Appium中,而是在您使用的设备/模拟器的屏幕上清晰可见。我了解或了解的内容:

  • 这是操作系统问题。 Appium取决于操作系统的可访问性层。升级或降级操作系统可以解决此问题,但此处不做任何保证。
  • 该应用程序正在使用自定义控件。只有使控件自定义控件的开发人员实现了自定义控件的可访问性。
  • 您还可能遇到已知或未知的错误。请务必检查Appium github issues中是否存在已知错误,或者从开发新版本的开发人员那里获得帮助。

如果尝试使用其他版本的OS或实现辅助功能不能解决问题或无法解决问题,则需要使用坐标来点按元素。如果其他所有方法都失败,这是万不得已的解决方案。

可以找到关于上述问题的非常有用的文章here。它还包含解决这些特定问题的所有资源,例如如何正确选择坐标。