I'm new to android testing and no idea whether this can happen or not.
Is it possible to run Jetpack compose unit tests using androidx.test.ext
AndroidJunit4 runner?
So we don't need to run instrumentation
tests and use a device.
Here's what I've tried:
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()
}
}
Running the test I get the following error:
No tests found for given includes: [greeting_showsGreetingText]
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…