¿Cómo puedo obtener identificadores, nombres o rutas x para elementos ui utilizados en una aplicación para móviles (Android / iOS) para pruebas de automatización móvil?
Quiero saber cómo puedo obtener IDs o nombres de elementos de interfaz de usuario utilizados en una aplicación móvil que se utilizan en pruebas de automatización móvil como appium, monkey-talk, xamarian, etc.
- Deshabilitar eventos a nivel de sistema en Android mono
- ApplicationTestCase obsoleto en el nivel 24 de API
- Optimizar el esfuerzo de prueba de Android
- Problema con Android IAP, sin OrderID en el objeto de compra
- Escribir / crear archivos dentro del contexto de la instrumentación de Android
- ¿Cómo enviar eventos clave a un emulador sin cabeza en una prueba de instrumentación?
- ¿Pruebas beta de Google Play sin una aplicación publicada?
- ¿Hay un comando ADB para habilitar / deshabilitar datos móviles? (Dispositivo enraizado)
- ¿Cómo puedo ejecutar una sola prueba con gradle android
- Cómo inyectar el evento de clic con Android UiAutomation.injectInputEvent
- Android: ejecución de pruebas instrumentadas en el servidor de TeamCity
- Prueba de GPS en Android
- Android: ¿Cómo puedo guardar, borrar y restaurar SharedPreferences para la prueba de unidades?
Lo que explico es para mi sistema (Windows 7), pero mis explicaciones deben ser fácilmente traducibles a otros sistemas también.
Requisitos previos :
- Cuando desee realizar las pruebas de automatización de Android siempre debe instalar Android SDK, por lo que supongo que ya lo ha hecho. Permite llamar a la ruta a la carpeta sdk
<ANDROID_HOME>
(incluida la carpetasdk
) - Ejecute
<ANDROID_HOME>/SDK Manager.exe
. Selecciona las últimas herramientas de Android SDK y las herramientas de la Plataforma SDK de Android e instálelas - Conecte un dispositivo que desee probar:
- Ejecute un emulador – se conecta automáticamente en su sistema
- O conecte un dispositivo físico e instale los controladores USB adecuados. Usted puede verificar que el dispositivo está conectado con el comando
<ANDROID_HOME/platform-tools/adb.exe devices
– si hay al menos un dispositivo en la lista que está bien para ir.
Una vez que tengas todo eso:
Ejecute <ANDROID_HOME>/tools/uiautomatorviewer.bat
. Esto abrirá una pantalla que le permitirá tomar capturas de pantalla del dispositivo conencionado. Vea abajo la imagen:
La captura de pantalla se realiza haciendo clic en el botón debajo del rectángulo morado, que agregué artificialmente. El rojo es agregado por la herramienta, porque fluctúo el elemento de interés. Puede observar las propiedades de los elementos a la derecha. Éstas son generalmente las propiedades que usted utilizaría para probar la aplicación nativa.
Si desea probar elementos que se cargan en WebView
entonces sería mejor si utiliza la depuración remota de Chrome para obtener los selectores correctos.
Nota:
Como veo que usted está haciendo los primeros pasos en las pruebas de automatización móvil, que es un área que estoy muy interesado en, puedo sugerirle echar un vistazo a la ATMOSPHERE Android marco de automatización de pruebas. Descargo de responsabilidad : Soy uno de sus creadores. Aún así – es libremente disponible y de código abierto. También creemos que ofrece capacidades no soportadas en otros marcos y es fácil de comenzar con lo que espero que sea útil para usted!
DO#
En mi caso este pedazo de código resolvió mi problema:
private IApp _app = ScenarioContext.Current.Get<IApp>("Application"); private readonly ILoginScreen _loginScreen; private readonly IMainMenuScreen _mainMenuScreen; public Login(ILoginScreen loginScreen, IMainMenuScreen mainMenuScreen) { _app.Repl(); _loginScreen = loginScreen; _mainMenuScreen = mainMenuScreen; }
Estoy usando el lenguaje Gherkin con Xamarin en el que el comando Repl () abre un nuevo cmd en el que puede escribir el comando tree y obtener la estructura de árbol de los elementos ui en la pantalla específica que está. Esto se muestra en la siguiente imagen:
- Propuesta de Android ActivityNotFoundException
- Cómo rellenar una listaVer desde un asyncTask onPostExecute () android