如何使用activityScenarioRule<Activity>?

Zer*_*ide 16 android androidx

我在这里遵循开发指南:

https://developer.android.com/guide/components/activities/testing

并有一个测试类,如:

@RunWith(AndroidJUnit4::class)
class MyTestSuite {
   @get:Rule var activityScenarioRule = activityScenarioRule<MyActivity>()

   @Test fun testEvent() {
    val scenario = activityScenarioRule.scenario
   }
}
Run Code Online (Sandbox Code Playgroud)

该方法activityScenarioRule<T>()未定义。我需要什么依赖?另外,在阅读这些文档时确定要添加哪些依赖项的最佳方法是什么?

ian*_*ake 28

activityScenarioRule<T>()方法是androidx.test.ext:junit-ktx:1.1.0依赖项的一部分。

通常,这将列在List of AndroidX Test dependencies 下,但它似乎还不是最新的junit-ktxcore-ktx模块,尽管它作为版本 1.1.0-beta01 发行说明的一部分被明确提及


Jor*_*ete 7

如果您不使用 ktx 依赖项,例如androidx.test.ext:junit:1.1.2您可以这样做:

@get:Rule
var activityScenarioRule = ActivityScenarioRule(MyActivity::class.java)
Run Code Online (Sandbox Code Playgroud)