在Compose UI测试中,需要使用androidx.compose.ui.test.junit4.createComposeRule
创建Compose测试规则,并确保测试设备的Android版本在Android 6.0(API级别23)或更高版本。同时,需要在模拟器的配置中启用“硬件加速”,否则可能会导致测试失败。示例代码如下:
@get:Rule
val composeTestRule = createComposeRule()
@Test
fun testMyComposable() {
composeTestRule.setContent {
MyComposable()
}
val button = composeTestRule.onNodeWithText("Click me")
button.performClick()
composeTestRule.onNodeWithText("You clicked the button!").assertExists()
}
其中,MyComposable()
是要测试的组合控件,onNodeWithText()
用于查找具有特定文本的节点,performClick()
用于模拟在按钮上的点击,assertExists()
用于验证是否存在具有特定文本的节点。