Articles

Comparación de herramientas de pruebas de automatización móvil: Appium, TestComplete, UI Automator, SeeTest, Robotium, XCUITest y más

CONTENIDO

Tiempo de lectura: 14 minutos

El testing móvil es más complejo que el testing web. Mientras que estas últimas se refieren a diferentes navegadores y a una variedad de versiones, las pruebas móviles se centran en las versiones de Android e iOS y en las resoluciones de pantalla de los móviles. Además de Android de serie, los ingenieros de control de calidad tienen que lidiar con las interfaces de usuario personalizadas. La mayoría de los fabricantes de dispositivos las añaden encima de Android estándar para ofrecer funciones adicionales y un diseño más distintivo. Algunos ejemplos famosos son OxygenOS de OnePlus y One UI de Samsung.

Con este artículo, pretendemos hacer la vida más fácil comparando herramientas de pruebas de automatización móviles dedicadas. Hemos incluido las recomendaciones de expertos internos y externos que dan su opinión sobre las herramientas de automatización móvil.

Cómo probar las aplicaciones móviles

Entonces, ¿cómo se realizan las pruebas móviles? Los ingenieros de control de calidad utilizan herramientas de pruebas de automatización móvil para facilitar las interacciones de los códigos de prueba con la aplicación en cuestión. La cuestión es cómo ejecutar las pruebas de automatización móvil. Hay tres opciones.

A través de dispositivos móviles locales en vivo. Con dispositivos reales conectados por USB, los QAs pueden probar la operatividad de una app desde la perspectiva del usuario final. Pueden acelerarlo ejecutando las pruebas en paralelo en varios dispositivos Android. Aunque sigue consumiendo bastante tiempo debido a la necesidad de configurar manualmente la infraestructura, este tipo de pruebas proporciona los resultados más precisos. Como alternativa, se pueden utilizar servicios de pruebas en la nube.

Utilizar una nube de dispositivos reales. Para ampliar la cobertura de los dispositivos, los QAs realizan pruebas en un entorno de pruebas remoto – granja de dispositivos aka nube de dispositivos. Las granjas de dispositivos, que tienen preinstalados los sistemas operativos y los navegadores, proporcionan a los evaluadores acceso a dispositivos físicos con múltiples versiones. Los probadores disponen de un panel de control en el que pueden gestionar todos los dispositivos conectados. Sauce Labs y BrowserStack son nubes de dispositivos muy utilizadas.

Vía emulador de Android / simulador de iOS. Los QAs también prueban las apps móviles a través de un software que imita un dispositivo móvil en su escritorio. En concreto, el emulador de Android imita tanto el entorno de software como el de hardware del dispositivo de destino, mientras que el simulador de iOS: solo el software del móvil. Por eso se necesita un ordenador original de Apple para realizar las pruebas. Entre los principales pros de los emuladores, Alexander Kot, ingeniero de automatización de móviles en AltexSoft, cita su capacidad para cambiar de dispositivo muy rápidamente. Anastasiya Nalyhach, ingeniera de automatización de pruebas en EPAM Systems, añade que los emuladores le permiten lanzar rápidamente pruebas locales en un PC cuando no hay un dispositivo real disponible. Sin embargo, los emuladores no son tan fiables como los dispositivos reales.

Emulador de Android en Android Studio

Emulador de Android en Android Studio

Emulador de Android en Android Studio

Para entender cómo todos estos componentes conforman el proceso de pruebas, primero tenemos que entender cómo funcionan las pruebas de automatización móvil en su conjunto.

Cómo funcionan las pruebas de automatización móvil

Para desarrollar y probar dispositivos móviles se utilizan los siguientes IDEs: Android Studio y Apple Xcode. Estos IDEs cuentan con todos los instrumentos necesarios para trabajar con el código, incluyendo depuradores de código (por ejemplo, Android Debug Bridge), emuladores y simuladores.

Una interfaz que permite la comunicación entre un dispositivo móvil y el ordenador se llama controlador móvil. Los drivers oficiales de Android son UI Automator y Espresso. Desarrollados por Google, ambos drivers están incluidos en la bien documentada Android Testing Support Library. Además, existen controladores de terceros como Robotium y Selendroid (Selenium para Android). En cuanto a iOS, el controlador XCUITest viene con Xcode.

Si se trata de una aplicación móvil disponible tanto en iOS como en Android, escribir pruebas separadas para cada sistema operativo llevará un tiempo. Puedes permitir la reutilización del código aprovechando una herramienta multiplataforma. Como resultado, escribes el código una sola vez y es compatible con ambos sistemas operativos. El ejemplo más popular de una herramienta de pruebas móviles multiplataforma es Appium.

Tres formas de utilizar una herramienta de pruebas de automatización móvil

Tres formas de utilizar una herramienta de pruebas de automatización móvil herramienta

Tres formas de utilizar una herramienta de pruebas de automatización móvil

Resumamos todo el proceso utilizando Appium como ejemplo. Una vez desarrollado el código, el cliente de Appium envía comandos al servidor de Appium a través de su API. A su vez, Appium convierte los comandos en el formato aceptado por el marco de pruebas nativo de la plataforma correspondiente (UIAutomator, XCUITest) y, como resultado, los comandos iniciales se ejecutan en la aplicación probada dentro de un simulador o emulador. Como alternativa, puedes utilizar una nube de dispositivos como Sauce Labs que tiene todos los dispositivos necesarios preinstalados para ti. Así que sólo tienes que conectarte a la plataforma en la nube. En caso de que decidas mantener dispositivos reales, tendrás que conectarlos y configurarlos tú mismo.

Cuándo automatizar las pruebas móviles

A menudo, las pruebas móviles se realizan manualmente debido a la complejidad de automatizar este proceso. Sus acciones en la pantalla táctil, como el desplazamiento y el arrastre, son bastante complicadas de automatizar. Vamos a distinguir los casos en los que es razonable automatizar las pruebas móviles y aquellos en los que es más prudente ceñirse a las comprobaciones manuales.

De forma similar a las pruebas web, existen múltiples escenarios para el QA automatizado de las apps:

1. Proyectos a largo plazo. La automatización merece la pena a largo plazo, si se planea desarrollar y mantener continuamente la app.

2. Comprobaciones de mantenimiento. Si una aplicación móvil se abastece de datos de un servidor remoto a través de una API, la sincronización de la app debe supervisarse a diario. A menudo, se producen cambios en el lado del servidor que provocan diferentes choques como fallos en el inicio de sesión o en la visualización de algunos elementos en la pantalla.

3. Pruebas de humo. Si se trata de una app independiente que no utiliza recursos externos, nos saltamos el paso anterior y procedemos a las pruebas de humo de inmediato. Realizado antes de la liberación, es una comprobación superficial de las funciones básicas.

4. Pruebas de regresión. Es la comprobación más exhaustiva ejecutando todas las pruebas rutinarias que se pueden automatizar. La automatización es especialmente rentable para la regresión de alto volumen.

5. Pipelines de integración continua. Dado que la integración continua gira en torno a las pruebas automatizadas únicamente, no hay otra opción aquí.

Pero no te olvides de las pruebas manuales. Será más preciso en cuanto a interrupciones como textos entrantes, llamadas, notificaciones push, etc. Esto también incluye probar cómo se comporta la app dependiendo del diferente tipo de conexión a Internet (3G, LTE, etc.), así como fuera de línea.

Así que es importante tener tanto pruebas móviles manuales como automatizadas. Mientras que las pruebas manuales se centran en las pruebas exploratorias o de usabilidad, las pruebas de automatización se encargan de las pruebas funcionales altamente repetibles. Para obtener más detalles sobre las pruebas manuales frente a las automatizadas, consulte nuestro artículo dedicado.

Además, hacemos un repaso de las herramientas que le ayudarán a convertir las pruebas manuales de su aplicación en una automatizada. Para conocer las herramientas generales de pruebas automatizadas, lea nuestro artículo sobre ese tema. Aquí nos concentramos en las pruebas móviles, aunque algunos actores permanecerán ya que soportan tanto las pruebas web como las móviles.

Herramientas de testing de código abierto para Android e iOS

Herramientas de testing de código abierto para Android e iOS

Herramientas de automatización para móviles para Android

Existen múltiples herramientas populares para escribir tests automatizados para Android y emular el comportamiento del usuario en la aplicación. Lo primero que hay que comprobar son las herramientas que la propia Google ha construido para su sistema operativo, UI Automator y Espresso. Si estás acostumbrado a Selenium en entornos web, existe una versión para móviles: Selendroid. También puedes consultar el popular y sencillo Robotium, que cuenta con el apoyo de una gran comunidad de código abierto.

Pues bien, empezaremos comparando dos herramientas de testing nativas de Android: UI Automator y Espresso.

Espresso y UI Automator: un tándem para el testing nativo de Android

Diseñado inicialmente para desarrolladores, Espresso requiere acceso al código fuente. Así, proporciona pruebas de caja blanca en contraste con UI Automator. Es compatible con aplicaciones Android a partir de la versión 2.3. UI Automator fue lanzado más tarde, por lo que mantiene Android 4.3+.

Hay una razón por la que Google mantiene ambos. Cada framework tiene algunas lagunas que el otro llena. Mientras que Espresso sólo puede operar dentro del contexto de nuestra aplicación de prueba, UI Automator es capaz de comprobar las interacciones de la aplicación objeto de estudio con otras apps. Los frameworks no son intercambiables, pero se complementan. Por lo tanto, una mejor manera es utilizar ambos frameworks para probar tu aplicación móvil.

Pros de Espresso y UI Automator:

  • Velocidad en las pruebas debido a la sincronización de código (Espresso es más rápido)
  • Fiabilidad: mantenido por el propio Google. Si algo se rompe, se arregla casi inmediatamente
  • Grabador de pruebas incorporado (sólo para Espresso)
  • Una comunidad activa donde los desarrolladores contribuyen constantemente y responden a las preguntas
  • Espresso y UI Automator contras:

    • Soporte de lenguajes limitado: Java y Kotlin.
    • Las comprobaciones personalizadas requieren buenos conocimientos de programación y una profunda comprensión de cómo funciona Android.

    Visor de AIU Automator

    Visor de AIU Automator

    Visor de AIU Automator, Fuente: Arseny Batyrov

    Tanto Selendroid como Robotium fueron desarrollados antes que los controladores oficiales. Sin embargo, no tienen tanto soporte como las herramientas de Google.

    Selendroid: Herramienta de Selenium para pruebas de compatibilidad con Android

    Selendroid es una herramienta de automatización móvil de Selenium, orientada únicamente a Android. Pero utilizando ios-driver -una API de Selenium WebDriver- junto con Selendroid, podrás probar también aplicaciones iOS. Escrito sobre la API de cliente de Selenium Web Driver, las pruebas de Selendroid están totalmente integradas con los actuales frameworks de Selenium. Utilizando Selenium Inspector, una herramienta de desarrollo de casos de prueba, Selendroid monitoriza el estado actual de la interfaz de usuario de la aplicación.

    Pros de Selendroid:

    • La función de conexión en caliente permite desconectar el dispositivo sin interrumpir la prueba. En última instancia, aumenta el número de dispositivos que se pueden probar simultáneamente.
    • Tiene una alta compatibilidad con el protocolo JSON Wire y Selenium 3 Ready.
    • Compatibilidad con versiones anteriores. Por ejemplo, puede soportar Android API 10 (versión 2.3.3) a través de la API 19 (versión 4.4).
    • No se requieren ajustes de la aplicación para automatizarla.
    • Hay un controlador de Android incorporado WebView app.
    • Contras de Selendroid:

      • No hay capacidad para automatizar las pruebas de las actividades fuera de la aplicación como la cámara, los mapas, etc.
      • Lento: es difícil de usar en algunas máquinas con menos de 4GB de RAM.
        • Robotium: librería de pruebas de UI de caja negra para aplicaciones Android

          Robotium, una de las primeras herramientas de pruebas automatizadas para Android, es utilizada con frecuencia. Como se utiliza para las pruebas de caja negra, no hay necesidad de datos adicionales sobre la estructura de la aplicación o las clases ejecutadas. Lo único que Robotium necesita saber es el nombre de la clase fundamental y cómo conectarse a ella. Java es el lenguaje preferido para componer las pruebas de Robotium.

          Propiedades de Robotium.

          • Permite componer situaciones de pruebas de función, de marco y de aceptación de usuario.
          • Tiene una gran comunidad: Hay muchos desarrolladores de código abierto que contribuyen a introducir más características en las siguientes versiones.
          • Preguntamos a Myhailo Skrypchuk, desarrollador de Brandnic, sobre el uso que hacen de Robotium para probar una app generadora de nombres de empresas: «Utilizamos la herramienta en las pruebas de funcionamiento para evaluar si la operación se ha completado utilizando el flujo de datos correcto. También, en las pruebas de seguridad, encontramos y eliminamos lagunas y vulnerabilidades, y lanzamos diferentes simulacros de ciberataques. En las pruebas de rendimiento, examinamos la aplicación con los requisitos de memoria y su velocidad para completar la tarea.»

            Los contras de Robotium:

            • Está atado al proceso de una aplicación, similar a Espresso.

            «Si tu aplicación llama a otra – Robotium no puede verla y realizar cualquier acción allí», añade Myhailo.

            • No tiene capacidad para bloquear/desbloquear un smartphone o una tableta.
            • No tiene funciones de grabación y reproducción
            • No ofrece capturas de pantalla.

            Herramientas de pruebas de automatización móvil para iOS

            Si estás atrapado en las pruebas de aplicaciones para iPhone, echa un vistazo a las opciones que tienes. Todo se reduce a XCUITest: la herramienta oficial de pruebas de interfaz de usuario de Apple. Dicho esto, Google ofrece una buena alternativa: EarlGrey, que quizá te resulte más adecuada para tus necesidades.

            XCUITest: métodos nativos para trabajar con la UI de iOS

            XCUITest se ejecuta dentro del entorno Xcode y sus pruebas deben estar escritas en Swift u Objective-C. Su soporte de versiones comienza con iOS 9.

            XCUITest pros:

            • Ejecución de pruebas paralelas distribuidas
            • Grabador de pruebas incorporado para pruebas sencillas, elementos de la UI y sus características
            • Contras de XCUITest:

              • Apple es más lento que Google en cuanto a la respuesta a los bugs
              • Débil documentación: No incluye una descripción de todos los métodos y cómo utilizarlos.
              • Pequeña comunidad: Te resultará difícil obtener una respuesta a tu pregunta.
              • La velocidad de ejecución de las pruebas es lenta en comparación con las pruebas de Android.
              • Las actualizaciones de los frameworks son escasas.
              • Las pruebas fuera de la caja sólo en simuladores, requiere utilidades adicionales para trabajar con dispositivos reales. Una de ellas es Facebook WebDriverAgent (WDA). Ejecutado en un simulador o en un dispositivo real, WDA transfiere comandos vía API a XCUITest.
                • EarlGrey: la respuesta de Google a XCUITest

                  Desarrollado por Google en 2016, EarlGrey es muy similar a Espresso. La propia Google utiliza la herramienta para realizar pruebas funcionales de apps nativas de iOS como YouTube, Google Calendar, Google Photos, Google Translate, etc. Puedes añadir Earlgrey a tu proyecto de Xcode de forma manual o utilizando un dependecy manager.

                  A diferencia de XCUITest, este framework de automatización de UI comparte el mismo proceso con la app: Los scripts de prueba esperan a que se produzcan eventos específicos de la UI antes de iniciar directamente una interacción con la UI de la aplicación. Así, la prueba puede afectar a la memoria compartida cambiando el comportamiento en tiempo de ejecución de la app. Aunque EarlGrey se sincroniza automáticamente con la UI y las peticiones de red, sigue permitiendo implementar tiempos personalizados.

                  Ventajas de Earl Grey sobre XCUITest:

                  • Incorpora las características de sincronización de Espresso al testing de iOS
                  • Soporte de dispositivos reales
                  • Contras de Earl Grey:

                    • Los informes de estadísticas anónimas vuelven a Google
                    • Sólo se puede probar una única app

                    Herramientas de pruebas de automatización móvil multiplataforma

                    Las herramientas de pruebas móviles que funcionan para ambos sistemas operativos te ahorrarán mucho tiempo y esfuerzo. Aunque es fácil perderse en la piscina de opciones, hemos seleccionado los cinco mejores frameworks -tanto gratuitos como con licencia- que pueden ayudarte a desarrollar pruebas automatizadas móviles multiplataforma. Appium es lo primero que nos viene a la mente. Pero no es tan fácil descubrirlo, sobre todo si no te tuteas con Selenium. A veces, es mejor pagar un extra por un automatizador sin scripts. Vamos a repasar ambas opciones a través de las herramientas de esta lista.

                    Comparación de herramientas de pruebas de automatización móvil multiplataforma

                    Comparación de herramientas de pruebas de automatización móvil multiplataforma

                    Appium: un framework de pruebas de interfaz de usuario móvil versátil

                    Si eres experto en Selenium, Appium será un paseo para ti. Es básicamente un Selenium WebDriver diseñado para probar dispositivos móviles. La función principal del servidor de Appium es recibir las peticiones de prueba en un formato JSON y convertirlas en comandos que puedan ser aceptados posteriormente por los frameworks de prueba nativos.

                    Cómo funciona el servidor de Appium

                    Cómo funciona el servidor de Appium

                    Cómo funciona el servidor de Appium

                    Las pruebas basadas en Appium y WebDriver pueden ejecutarse utilizando el marco de automatización de pruebas WebDriverIO.

                    Se trata de bindings de WebDriver para Node.js. WDIO tiene su propio corredor de pruebas y es fácilmente configurable. Su interfaz de línea de comandos viene con una bonita utilidad de configuración que ayuda a crear el archivo de configuración en menos de un minuto. También ofrece una visión general de todos los paquetes de terceros disponibles, como adaptaciones del marco, reporteros y servicios, y puede instalarlos.

                    Pros de Appium. Appium es, con diferencia, el marco de pruebas de interfaz de usuario móvil más universal.

                    • Soporta la automatización a través de una variedad de plataformas: iOS móvil, Android móvil y Windows de escritorio.
                    • La herramienta automatiza todo tipo de aplicaciones: nativas, web móvil e híbridas.
                    • Appium es compatible con todos los lenguajes de programación populares: Ruby, Python, Java, JavaScript, PHP, C# y RobotFramework. Con clientes escritos en cada uno de estos lenguajes, no hay límites en cuanto a los corredores de pruebas y los marcos de pruebas. De hecho, es algo inherente a la filosofía de Appium: no poner restricciones a tu entorno de pruebas para que puedas gestionarlo como tú decidas.
                    • A diferencia de otras herramientas de automatización, Appium proporciona una interfaz estable basada en WebDriver que mantiene tus pruebas fáciles a pesar de cualquier actualización.

                    Ejemplo de implementación de Appium para Android

                    Ejemplo de implementación de Appium para Android

                    Ejemplo de implementación de Appium para Android, Fuente: Thomas Hansson

                    Ejemplo de implementación de Appium para iOS

                    Ejemplo de implementación de Appium para iOS, Fuente: Thomas Hansson

                    Contras de Appium:

                    • Anastasiya Nalyhach señala que Appium no interactúa directamente con una app, sino que utiliza el protocolo HTTP para enviar comandos. Alexander Kot añade que «la ejecución de los comandos tarda un poco debido a la larga cadena de interacción que hay bajo el capó de Appium: Después de lanzar un dispositivo y crear una sesión, Appium pasa a establecer una conexión con el servidor WebDriverAgent. Sólo entonces, el servidor WebDriverAgent se comunica con el marco de pruebas nativo de Apple para ejecutar los comandos en el dispositivo»
                    • Sin acceso al código fuente, hay problemas para modificar el estado de la aplicación. Además, Appium no permite burlarse de la parte del back-end mientras se verifica la UI. En definitiva, asegúrate de tener un hardware potente ya que Appium utiliza muchos recursos.

                    Calabash: Behavior Driven Development testing framework

                    Si Xamarin está más cerca de tu corazón, apuesta por Calabash. En 2017, Xamarin dejó de dar soporte a Calabash, y con la ayuda de la comunidad, Calabash se convirtió en una herramienta de código abierto. Hay librerías para cada plataforma: Calabash iOS y Calabash Android.

                    Calabash asegura que una aplicación está compuesta por las características, escenarios y definiciones de pasos adecuados, así como si se está ejecutando con las entradas correctas.

                    Pros de Calabash:

                    • Al estar orientado a BDD, Calabash lleva a cabo pruebas de desarrollo basadas en el funcionamiento de la aplicación.
                    • A diferencia de la herramienta agnóstica Appium, Calabash está estrechamente acoplado con Cucumber, orientado al comportamiento, utilizándolo para definir escenarios de prueba en un lenguaje sencillo. Esto hace que sea comprensible incluso para los miembros del equipo que no son técnicos.
                      • Los contras de Calabash:

                        • Calabash permite interacciones con la aplicación sólo para un marco de pruebas basado en Ruby.
                        • No hay funciones de grabación y reproducción.
                        • La depuración de los scripts de prueba y el mantenimiento de las pruebas son los principales problemas. Con el aumento de los dispositivos bajo prueba, se hace difícil mantener los archivos de datos de prueba.
                        • Escribir scripts de pruebas de automatización para Calabash requiere un probador hábil y competente.
                          • SeeTest: plataforma comercial de Pruebas Continuas

                            SeeTest de Experitest es la primera herramienta comercial de pruebas multiplataforma de nuestra lista. Disponible con un periodo de prueba de 30 días, el plan de automatización de SeeTest cuesta al usuario 199 dólares al mes si se paga un año por adelantado o 249 dólares cada mes. Entonces, ¿por qué pagar si hay herramientas gratuitas?

                            Los pros de SeeTest:

                            • Capacidades integradas de Appium en una cómoda interfaz con características como reflejo del dispositivo, grabador de pruebas, espía de objetos y retroalimentación visual
                            • Cobertura de automatización ampliada que incluye el escaneo de códigos de barras & de cheques, características de audio, simulación de GPS y TouchID, o elementos personalizados como deslizadores, selectores, tablas, gestos y cualquier UI compleja.
                            • Los plug-ins deIDE para desarrollar y ejecutar pruebas en dispositivos reales directamente desde Eclipse o IntelliJ
                            • Acceder a más de 1000 dispositivos móviles en la nube y ejecutar cientos de pruebas en paralelo
                            • Informes de pruebas detallados con capturas de pantalla, vídeos y archivos de registro.

                            SeeTest Reporter

                            SeeTest Reporter

                            SeeTest Reporter

                            En resumen, SeeTest encaja perfectamente en el proceso de CI ya que permite priorizar, programar y distribuir múltiples pruebas en paralelo en los dispositivos y SOs relevantes para la compilación específica.

                            Contras de SeeTest. Siempre hay un pero. En el caso de SeeTest, es su precio por lo que la herramienta no es adecuada para proyectos de pequeña escala. Además, la herramienta no es de código abierto por lo que no hay espacio para ajustes.

                            TestComplete: un módulo propio de pruebas móviles sin scripts

                            TestComplete es un producto de SmartBear, líder en automatización de pruebas de software. Ofrece módulos automatizados para pruebas móviles, de escritorio y web. Con TestComplete, puedes crear pruebas grabándolas o editando comandos de prueba en sus paneles y editores. Las pruebas se ejecutan dentro de la plataforma o se exportan para ejecutarlas en aplicaciones externas.

                            Pros de TestComplete:

                            • Hay una amplia gama de lenguajes de programación (por ejemplo, JavaScript, Python, Jscript.)
                            • La herramienta de grabación y reproducción sin scripts permite grabar gestos multitáctiles (deslizar, pellizcar, arrastrar, soltar o desplazarse) y reproducirlos. Steve Pritchard, consultor informático de Anglo Liners, afirma que estas pruebas son tan exhaustivas como las manuales.

                            PruebaReproducción completa de gestos en pantalla táctil

                            PruebaReproducción completa de gestos en pantalla táctil

                            .screen gestures

                    TestComplete playback of touch-screen gestures

                    • Puntos de control específicos verifican el estado de la aplicación durante la ejecución de la prueba.
                    • Las comprobaciones automáticas validan aspectos clave. Steve lo confirma: «Gracias a la información en tiempo real que produce la herramienta, somos capaces de seguir el progreso y el estado de nuestras páginas desde cualquier dispositivo de forma simultánea.»
                    • Hay una preintegración con la herramienta de pruebas de API SoapUI.
                    • Contras de TestComplete:

                      • Esta solución tiene un precio elevado. Para un módulo móvil junto con la propia plataforma, TestComplete le facturará 2.299 dólares al año como mínimo. Eso es sólo para un único dispositivo informático. Las extensiones como la ejecución de pruebas en paralelo, las repeticiones de pruebas en vídeo, el reconocimiento visual basado en la inteligencia artificial y las auditorías web automáticas de rendimiento, accesibilidad y SEO tienen un precio adicional. Además, TestComplete cobra por separado la formación y la certificación. Con la compra, los clientes de TestComplete obtienen acceso al Portal de Gestión de Casos al que pueden dirigirse para obtener asistencia. Antes de comprometerse pueden probarlo durante un mes.
                      • Las pruebas de iOS con TestComplete requieren la instalación de herramientas de virtualización de hardware en su Mac.
                        • Tricentis Tosca: motor móvil 3.0 basado en modelos con licencia

                          Como parte de la instalación estándar de Tricentis Tosca, el motor móvil 3.0 de Tosca tiene que ser seleccionado explícitamente a través de la configuración personalizada. Emparejado con Appium, Tricentis permite aprovechar la potencia de Appium sin tener que lidiar con su complejidad técnica. Además, Tosca Mobile Engine 3.0 utiliza componentes de las herramientas AndroidSDK y Xcode. Viene integrado en nubes de dispositivos: Perfecto, Mobile Labs, Sauce Labs y TestObject. De este modo, no se depende de los entornos de prueba, sino que se puede contratar cuando surja la necesidad.

                          Tricentis Tosca pros. Al igual que TestComplete, Tricentis permite la automatización de pruebas sin scripts junto con la escritura de código manual, lo que facilita su uso. Entre las capacidades de Tricentis de las que te puedes beneficiar están:

                          • Generación de datos de prueba sintéticos,
                          • Pruebas basadas en el riesgo,
                          • Diseño de casos de prueba,
                          • Ejecución distribuida,
                          • Virtualización de servicios,
                          • Gestión y análisis de pruebas,
                          • Integraciones de herramientas DevOps y de gestión del ciclo de vida de las aplicaciones
                          • Despliegue y puesta en marcha automatizados con pruebas lanzadas automáticamente y sin necesidad de interacción manual.
                            • Tricentis Tosca contras: Tosca tiene un precio personalizado que está en el lado alto. Ponte en contacto directamente para averiguarlo por ti mismo.

                              Desafíos de las pruebas móviles (en comparación con las pruebas web)

                              En términos de despliegue de funcionalidad, el desarrollo móvil se basa en el conjunto de características web existentes. Por lo tanto, crear una aplicación de apoyo debería ser más fácil. Pero esto no se relaciona con el proceso de pruebas. En este caso, las pruebas móviles comienzan desde el principio, independientemente de lo exhaustivas que hayan sido las pruebas web. Ahora, vamos a repasar las principales dificultades que tienen las pruebas móviles en contraste con las pruebas web.

                              Fragmentación de los dispositivos. Al igual que en el caso de las pruebas web, en las que solo tratamos con PC y portátiles, las pruebas móviles abarcan teléfonos, tabletas, smartwatches, etc. Por lo tanto, el manejo de muchos fabricantes de hardware con varios tamaños de pantalla e interfaces de usuario personalizadas, complica el proceso de pruebas.

                              Doble trabajo. Las pruebas web se ocupan de un solo entorno: un navegador en el que la multiversión no es tan importante como en las pruebas móviles. Al estar pendientes de los sistemas operativos móviles Android e iOS, los probadores deben encontrar dos tipos de localizadores de objetos de página e implementar pruebas separadas para características similares. Al dar soporte a dos conjuntos de infraestructura a la vez, el departamento de control de calidad debe estar preparado para cualquier actualización push que pueda causar interrupciones en las pruebas.

                              Ajuste de dispositivos. Como siempre, iOS requiere un equipo Apple para escribir pruebas automatizadas.

                              Velocidad de las pruebas. Las pruebas web se realizan directamente en el navegador. Esto contrasta con las pruebas móviles, en las que el código pasa por una cadena de acciones más larga antes de poder ejecutarse en el dispositivo de destino. Esto provoca retrasos en el proceso de pruebas móviles.

                              Herramientas y soporte. A diferencia de la automatización web, la móvil tiene una comunidad menos madura incapaz de abordar algunas cuestiones. Sus herramientas aún están evolucionando.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *