Kotlin + Espresso:未找到活动

7

一年之后重新开始进行Android开发,但我又被espresso搞混了 -_-

我只是想设置一个简单的espresso测试,但测试失败并显示以下信息:

java.lang.RuntimeException: No activities found. Did you forget to launch the activity by calling getActivity() or startActivitySync or similar?

确实,我没有看到应用程序被启动。以下是代码:

@RunWith(AndroidJUnit4::class)
@LargeTest
class EfficioTest {
    @get:Rule @JvmField var activityRule: ActivityTestRule<MainActivity> = ActivityTestRule(MainActivity::class.java)

    private fun getActivity() = activityRule.activity

    @Test fun testInitState() {
        onView(withId(R.id.store_spinner)).check(matches(isDisplayed()))
    }
}

MainActivity已经在清单文件中,并且使用启动器启动时可以正常工作。

我错过了什么?

2个回答

9

找到了!更改为:

@get:Rule @JvmField var activityRule: ActivityTestRule<MainActivity> = ActivityTestRule(MainActivity::class.java)

致:

 @Rule @JvmField var activityRule: ActivityTestRule<MainActivity> = ActivityTestRule(MainActivity::class.java)

(已移除get:)


你好,Geob-o-matic。请考虑将自己的回答标记为正确答案,以帮助他人。 :) - Igor Escodro

2
对于我来说
 @get:Rule
    val activityRule = ActivityScenarioRule(MainActivity::class.java)

曾经工作过


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接