Select Espresso 中编辑文本内的文本

Select text inside edittext in Espresso

我想 select 编辑文本中的文本,以便我可以使用 Espresso 检查复制和粘贴选项。我试过的是,

onView(withText("text")).perform(longClick());

这将在 Edittext 中执行长按。但是文本不是 selected。

对于简单的 "catching" 部分文本,您可以使用 Hamcrest matchers,例如 containsString()startsWith()endsWith().

不过,如您所说,您需要将特定文本与 copy 匹配,并在另一个地方 paste 匹配。

我认为用 Espresso 测试它可能几乎不可能。您可能需要执行此操作另一个名为 uiatomator.

的 UI 测试工具

uiatomator,由 Google 制作的另一个很棒的工具允许您测试 Android 系统功能,如通知、屏幕锁定或复制和粘贴操作。它与 Espresso 测试框架配合得很好。

要查找更多信息,请阅读这篇文章:

http://qathread.blogspot.com/2015/05/espresso-uiautomator-perfect-tandem.html

和 uiautomator 文档,您会找到 here.

希望对您有所帮助。