我们正在尝试为Mapbox的基于Maps SDK for Android的原生移动应用程序创建自动化测试。自动测试需要确定屏幕上出现的标记的数目、屏幕上出现的标记簇的数目、点击标记或簇等。
在Android应用程序上通过UIAutomatorViewer或Appium检查器查看Mapbox地图时,地图上可见的标记不会显示在对象层次结构中。
Android原生移动应用程序开发团队可以做些什么来显示标记/集群,以使它们对Appium可见?
或者,自动化团队可以探索哪些其他选项来开发自动化测试?Espresso并不理想,因为自动化团队无法访问本地移动应用程序的源代码。
请参阅Mapbox demo application's -> Annotation ->绘制标记,以获取我们想要检测并单击的标记的示例。
发布于 2019-01-02 15:24:07
由于Mapbox SDK使用OpenGL呈现,而不是本机组件,因此大多数测试自动化框架将无法识别您添加到地图中的标记或集群等UI元素。
有一些测试人员使用来自Accelerated-KAZE功能项目的图像识别来查找屏幕上的项目,以便对它们进行计数和选择。一些示例代码可以在https://github.com/bitbar/bitbar-samples/tree/master/image-recognition中找到
另一种方法可能是让移动应用程序开发人员包括测试挂钩,这些挂钩允许您的测试代码使用Mapbox API来查询呈现的功能。Mapbox文档在这里:https://www.mapbox.com/android-docs/maps/overview/query/#query-rendered-features
发布于 2019-01-03 14:19:03
我之前遇到过这样的场景,当从Appium检查器中选择一个元素时,即使它显示在屏幕上,也不会高亮显示。
后来,当我扫描完整的层次结构树时,单击每个节点就能够找到元素。
我建议您单击每个节点并检查,标记将出现在层次结构树中。只是检查器光标不能突出显示它。
https://stackoverflow.com/questions/53879620
复制相似问题