Результатом тестирования фрагмента с использованием FragmentScenario является java .lang.IllegalStateException: не удается выполнить это действие после onSaveInstanceState - PullRequest
0 голосов
/ 01 мая 2020

Я пытался проверить свой фрагмент, используя сценарий фрагмента, но всегда получаю ошибку ниже

@RunWith(AndroidJUnit4::class)
class HomeFragmentTest {

    @Test
    fun fab() {
        val scenario = launchFragmentInContainer<HomeFragment>()
    }
}.

java .lang.RuntimeException: java. lang.IllegalStateException: Невозможно выполнить это действие после onSaveInstanceState в androidx.test.runner.MonitoringInstrumentation.runOnMainSyn c (MonitoringInstrumentation. java: 441) в androidx.test.core.app.ActivityScenario.onActivity (ActivityScension. 101Acentive) *: 564) в androidx.fragment.app.testing.FragmentScenario.internalLaunch (FragmentScenario. java: 300) в androidx.fragment.app.testing.FragmentScenario.launchInContainer (FragmentScenario. java: 282) в com.example .myapplication.ui.home.HomeFragmentTest.fab (HomeFragmentTest.kt: 31) в java .lang.reflect.Method.invoke (собственный метод) в org.junit.runners.model.FrameworkMethod $ 1.runReflectiveCall (FrameworkMethod. 1017 *: 50) в org.junit.internal.runners.model.ReflectiveCallable.run (ReflectiveCallable. java: 12) в org.junit.runners.model.FrameworkMethod.invokeEx взрывно (FrameworkMethod. java: 47) в org.junit.internal.runners.statements.InvokeMethod.evaluate (InvokeMethod. java: 17) в org.junit.runners.ParentRunner.runLeaf (ParentRunner: 1021 325) по адресу org.junit.runners.BlockJUnit4ClassRunner.runChild (BlockJUnit4ClassRunner. java: 78) по адресу org.junit.runners.BlockJUnit4ClassRunner.runChild (BlockJUnit4ClassRunner. 57. org. выполнить (ParentRunner. java: 290) в org.junit.runners.ParentRunner $ 1.schedule (ParentRunner. java: 71) в org.junit.runners.ParentRunner.runChildren (ParentRunner. java: 288) в org.junit.runners.ParentRunner.access $ 000 (ParentRunner. java: 58) в org.junit.runners.ParentRunner $ 2.evaluate (ParentRunner. java: 268) в org.junit.runners.ParentRunner.run ( ParentRunner. java: 363) на androidx.test.ext.junit.runners.AndroidJUnit4.run (AndroidJUnit4. java: 104) на org.junit.runners.Suite.runChild (Suite. java: 128) в org.junit.runners.Suite.runChild (Suite. java: 27) в org.junit.runners.ParentRunner $ 3.run (Па rentRunner. java: 290) в org.junit.runners.ParentRunner $ 1.schedule (ParentRunner. java: 71) в org.junit.runners.ParentRunner.runChildren (ParentRunner. java: 288) в орг. junit.runners.ParentRunner.access $ 000 (ParentRunner. java: 58) в org.junit.runners.ParentRunner $ 2.evaluate (ParentRunner. java: 268) в org.junit.runners.ParentRunner.run (ParentRunner. java: 363) в org.junit.runner.JUnitCore.run (JUnitCore. java: 137) в org.junit.runner.JUnitCore.run (JUnitCore. java: 115) в androidx.test.internal .runner.TestExecutor.execute (TestExecutor. java: 56) в androidx.test.runner.AndroidJUnitRunner.onStart (AndroidJUnitRunner. java: 388) в android .app.Instrumentation $ InstrumentationThread.run (Инструментарий. *) 1044 *: 2209) Причина: java .lang.IllegalStateException: Невозможно выполнить это действие после onSaveInstanceState в androidx.fragment.app.FragmentManager.checkStateLoss (FragmentManager. java: 1691) в androidx.fragment.app.FragmentManager .ensureExecReady (FragmentManager. java: 1794) по адресу andr oidx.fragment.app.FragmentManager.execSingleAction (FragmentManager. java: 1814) в androidx.fragment.app.BackStackRecord.commitNow (BackStackRecord. java: 297) в androidx.fragment.app.testing.FragmentScenario $ 1.per (FragmentScenario. java: 317) в androidx.fragment.app.testing.FragmentScenario $ 1.perform (FragmentScenario. java: 301) в androidx.test.core.app.ActivityScenario.lambda $ onActivity $ 2 $ ActivityScenario (ActivityScenario . java: 551) на androidx.test.core.app.ActivityScenario $$ Lambda $ 4.run (неизвестный источник: 4) на java .util.concurrent.Executors $ RunnableAdapter.call (Executors. java: 462) в java .util.concurrent.FutureTask.run (FutureTask. java: 266) в android .app.Instrumentation $ SyncRunnable. запустить (Instrumentation. java: 2227) в android .os.Handler.handleCallback (Обработчик. java: 883) в android .os.Handler.dispatchMessage (Обработчик. java: 100) в android .os.Looper.l oop (Looper. java: 237) в android .app.ActivityThread.main (ActivityThread. java: 7811) в java .lang.reflect.Method. invoke (собственный метод) в com. android .internal.os.RuntimeInit $ MethodAndArgsCaller.run (RuntimeInit. java: 493) в com. android .internal.os.ZygoteInit.main (ZygoteInit. java : 1076)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...