如何解决使用 AndroidJunit4 和无设备运行 Jetpack compose 测试
我是 Android 测试的新手,不知道这是否会发生。
是否可以使用 ArgumentError (wrong number of arguments (given 3,expected 1..2))
AndroidJunit4 runner 运行 Jetpack compose 单元测试?
因此我们不需要运行 androidx.test.ext
测试和使用设备。
这是我尝试过的:
instrumentation
:
app/src/test/
运行测试时出现以下错误:
@RunWith(AndroidJUnit4::class)
class ExampleUnitTest {
@get:Rule
val activityScenarioRule = ActivityScenarioRule(MainActivity::class.java)
@get:Rule
val composeTestRule = createAndroidComposeRule<MainActivity>()
// createComposeRule() if you don't need access to the activityTestRule
@Test
fun greeting_showsGreetingText() {
// Start the app
composeTestRule.setContent {
analyzerTheme {
// A surface container using the 'background' color from the theme
Surface(color = MaterialTheme.colors.background) {
Greeting("Android")
}
}
}
composeTestRule.onNodeWithText("Hello Android!").assertIsdisplayed()
}
}
解决方法
Compose 测试仍然是仪器测试,没有物理设备或模拟器就无法运行
,从 beta09 开始,撰写测试应该现在可以与 Robolectric 一起使用,但有一些限制。 请参阅 Compose release notes 以供参考。
无可否认,我一直无法让它工作,但我还没有很努力地尝试(还):)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。