我在类(class)中创建动态字段。而且我无法在布局(.xml)中编写EditTexts,所以我没有R.id.edit_text
,如何在Espresso 2中测试没有R.id.edit_text的编辑文本?如果我有 R.id.edit_text - 我可以写 onView(withId(R.id.edit_text)).perform(typeText("123"));
但我没有 R .id.edit_text
.
最佳答案
withId
只是 View 匹配器之一。您可以使用适合您情况的其他产品。您可以在 com.google.android.apps.common.testing.ui.espresso.matcher
的 ViewMatchers
下进行检查。
谷歌代码可以找到here .
还有hamcrest匹配器可以帮助获得更复杂的条件。
示例之一可能是这样的:
onView(allOf(
isAssignableFrom("class name"),
withText("Text to match")))
.perform(...);
如果您需要更复杂的匹配器,您也可以编写自己的匹配器。
我还建议阅读the Espresso documentation .
关于java - 如何在没有 R.id.edit_text 的情况下在 Espresso 中进行测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30219784/