Android - 测试谷歌地图信息窗口点击

标签 android google-maps testing android-espresso android-uiautomator

我正在为我的应用程序编写测试,但我一直在测试 GoogleMap。使用 UiAutomator 点击标记很容易,但似乎无法点击信息窗口。

这就是我如何测试点击 Marker:

UiDevice device = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation());
UiObject marker = device.findObject(new UiSelector().descriptionContains(MARKER_TITLE));

我试过使用 Android Device Monitor 和转储 View 层次结构,但似乎该 View (信息窗口)不存在。

这是我要测试的屏幕的样子: /image/FuxHG.png

关于如何使用 EspressoUiAutomator 点击信息窗口有什么想法吗?

最佳答案

绘制的信息窗口不是实时 View 。 View 在返回时呈现为图像(使用 View.draw(Canvas))。这意味着您将无法将其作为对象找到。

由于您可以在整个信息窗口上收听通用点击事件,因此您可以使用其坐标计算为与标记的偏移量进行触摸。

关于Android - 测试谷歌地图信息窗口点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42505274/

相关文章:

iOS 应用内购买测试器对话框缺少 Apple ID 输入字段

android - 按钮形状以及选择器标签

android - 错误获取 'name' 属性 : attribute is not a string value

android - 布局中的三角形 - Android UI

android - 如何在 Intellij 上重新生成 android 资源文件 (R.java)

ios - Google Map SDK 可以跟踪某人的位置 iOS

google-maps - Ionic 3 Google Maps- map 未在Android上显示

android - 使用计时器在 map 上放置标记

java - 我们如何创建一个算法来检查一个字符串是否是两个字符串合并的结果?

ruby-on-rails - 我正在尝试在 Rails 上使用区分大小写的唯一性,但测试失败了