android / android/android-test
Orchestrator fails if service disconnects
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 1.2k
- Forks
- 342
- Merge medio
- 11 h 29 min
- PR fusionados (30 d)
- 2
Descripción
Description
Our test suite has recently begun crashing without running all the tests.
From logcat, it looks like we are running into memory pressure and Android is killing the Orchestration Service.
The OrchestratedInstrumentationListener code does not trigger a reconnect to the service on disconnect, and this makes tests fail if the service is killed. Once the service is killed there is no way to recover. The code should be updated to rebind the service on an unbind.
In addition the service is not being bound with flag Service.BIND_IMPORTANT which would make the Orchestration Service less likely to be killed under memory pressure.
Steps to Reproduce
I have outlined steps to reproduce here:
https://issuetracker.google.com/issues/135574731
Note that you may have to add tests which consume memory to cause the service to be killed.
Expected Results
The orchestrator does not crash.
Actual Results
The orchestrator crashes and only a small subset of our tests are run.
AndroidX Test and Android OS Versions
AndroidX 1.2.0 - Tested on both 26 and 27.
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con OrchestratedInstrumentationListener y el código de vinculación del servicio, y luego sigue los pasos de reproducción de issuetracker.google.com/issues/135574731 en AndroidX Test 1.2.0 con Android 26 o 27. Verifica el comportamiento cuando Android finaliza el Orchestration Service bajo presión de memoria; se considera terminado cuando el servicio se vuelve a vincular después de unbind, se vincula con Service.BIND_IMPORTANT y la suite de pruebas completa continúa ejecutándose.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- android, java
- Área
- mobile, testing-qa
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 42/100