Внедрение зависимости рукояти для тестирования пользовательского интерфейса говорит о том, что «HiltAndroidRule» не был добавлен, но был - PullRequest
2 голосов
/ 09 июля 2020
• 1000 тот же результат.

Ответы [ 2 ]

1 голос
/ 14 июля 2020

Вы должны обернуть его, используя RuleChain или применив параметр order к Rule аннотации.

Это подробно объясняется здесь: https://developer.android.com/training/dependency-injection/hilt-testing#multiple -testrules

0 голосов
/ 12 августа 2020

У меня была такая же ошибка, когда я пытался протестировать действие, отличное от модуля запуска. Я использую Kotlin, но что-то очень похожее должно применяться к Java.

Сначала вам нужно определить ActivityTestRule как действие без запуска:

@Rule @JvmField var testRule = ActivityTestRule(UpgradeRequiredActivity::class.java, false, false)

А затем , после инъекции в рукоять приступайте к занятиям:

@Before fun setup() {
    hiltRule.inject()
    testRule.launchActivity(Intent(targetContext, UpgradeRequiredActivity::class.java))
}
...