如何在 Java 测试类中结合使用 compose 和 xml 视图来使用 compose 测试规则

问题描述 投票:0回答:1

我正在尝试为某些视图编写 UI 测试,其中一些测试已经在 Java 中实现。我还打算包含对 Compose 视图的测试。然而,在我的尝试中,使用测试标签或内容描述都没有被 Espresso 识别。此外,我在将 Compose 测试规则集成到 Java 测试类中时面临着挑战。如果有人成功实现了这一目标或者可以提供与此事相关的建议,这将极大地帮助我了解如何实现这一目标。

java android kotlin android-jetpack-compose android-espresso
1个回答
0
投票

将所需的依赖项添加到您的项目中:

androidTestImplementation 'androidx.test.espresso:espresso-core:<VERSION>'
androidTestImplementation 'androidx.compose.ui:ui-test:<VERSION>'

然后在您的测试类中创建一个 Compose Test Rule 实例。

现在使用 Compose Test Rule 的

setContent
方法来设置测试的 Compose 内容:

composeTestRule.setContent {
    // Your Compose content here.
}

然后使用

Compose Test Rule
onNode 方法与 Compose 视图进行交互:

composeTestRule.onNode(hasText("Test message.")).performClick()

最后要与 XML 视图交互,您可以使用常规 Espresso 方法:

onView(withId(R.id.button)).perform(click())
© www.soinside.com 2019 - 2024. All rights reserved.