Próbuję uruchomić wiele przypadków testowych dla aktywności logowania za pomocą ActivityInstrumentationTestCase2. Pierwszy przypadek testowy sprawdza pomyślność logowania, co powoduje, że Aktywność uruchamia następną Aktywność, wywołując funkcję startActivity (intent intent). Teraz na Aktywności, którą próbuję przetestować, jest inna aktywność. Pierwszy przypadek testowy przechodzi i rozpoczyna się drugi przypadek testowy. Jednak na zawsze zawiesi się w getActivity(), gdy jest wywoływana przez drugi przypadek testowy.Test urządzenia Android z ActivityInstrumentationTestCase2, getActivity() zawiesza się, gdy poprzedni przypadek testowy powoduje uruchomienie innego działania
Jeśli przejdę do kodu aktywności logowania i skomentuję część, która wywołuje funkcję startActivity (intent intent), wtedy oba testy będą działać poprawnie.
Próbowałem już kilku rzeczy. Użyłem Intent.FLAG_ACTIVITY_CLEAR_TOP, aby wyczyścić stos działań. W takim przypadku najwyższa aktywność zostanie zamknięta, a działanie związane z logowaniem zostanie ujawnione, ale nadal utknie w funkcji getActivity() po rozpoczęciu drugiego przypadku testowego.
Próbowałem również wysłaćKeys (KeyEvent.KEYCODE_BACK), ale to nie ma efektów.
Co mogę zrobić, aby temu zaradzić? Dzięki!
getInstrumentation() addMonitor (NextActivity.class.getName(), pusty, prawdziwe.); Podstęp! – initialxy