ChitChat
ChitChat es una aplicación que combina mensajería segura con pagos. Permite a usuarios de toda África chatear entre sí a través de una plataforma encriptada. Con ChitChat, se pueden enviar pagos instantáneos a amigos y familiares dentro de las conversaciones de chat.
Todos los clientesPruebas de aplicaciones móviles
Ayudamos a ChitChat a preparar su aplicación móvil para el lanzamiento público. Nuestros ingenieros de control de calidad se aseguraron de que la aplicación funcionara a la perfección en una amplia gama de dispositivos iOS y Android específicos del mercado objetivo. Centramos nuestros esfuerzos en garantizar la máxima seguridad, rendimiento y facilidad de uso.
Más informaciónPruebas automatizadas
Nuestros ingenieros de automatización de control de calidad ayudaron a ChitChat a establecer flujos de trabajo de pruebas automatizadas eficaces para cubrir una amplia gama de funcionalidades en un breve plazo de tiempo. Nuestro objetivo era dividir entre un 70% y un 30% las pruebas automatizadas y manuales, lo que dio como resultado un lanzamiento puntual y sin obstáculos.
Más informaciónDesafío
ChitChat recurrió a QAwerk cuando se encontraban en las primeras fases de desarrollo, elaborando la arquitectura central y las historias de usuario. Nos contrataron para establecer y dirigir un proceso completo de control de calidad desde el principio. Esto incluía pruebas manuales y automatizadas para garantizar una experiencia de usuario fluida y segura.
La naturaleza innovadora de la aplicación ChitChat presentaba retos de pruebas únicos:
- Pruebas de pago en profundidad: La funcionalidad de pago por chat requería pruebas rigurosas. Esto exigió el acceso a un conjunto diverso de tarjetas bancarias de prueba y múltiples números de teléfono de prueba para simular varios escenarios de pago.
- Especificidades del mercado y fragmentación de dispositivos: A diferencia de los usuarios típicos de aplicaciones móviles en Europa o América, el público objetivo en Zambia utiliza principalmente distintos modelos de teléfono. Para ello, estudiamos los datos de uso y reunimos un amplio conjunto de teléfonos de prueba que reflejaban los dispositivos más populares en Zambia. La lista de dispositivos con distintas configuraciones era extensa.
- Normas de seguridad mejoradas: Como la aplicación se ocupa de transacciones financieras, debíamos superar las expectativas de calidad habituales. Tuvimos que aplicar estrategias de prueba excepcionalmente profundas y exhaustivas para garantizar la seguridad y fiabilidad de la aplicación en el manejo del dinero de los usuarios.
Profundicemos en cómo superamos estos retos.
Solución
Participamos activamente en el proceso de desarrollo, analizando cada historia de usuario a medida que estaba disponible e identificando posibles lagunas que necesitaban aclaración. Basándonos en las historias de usuario, creamos escenarios de prueba sólidos que cubrían todas las posibles interacciones del usuario.
Realizamos pruebas manuales exhaustivas y creamos marcos de pruebas automatizadas para los aspectos de backend y frontend de la aplicación. Nuestro plan de pruebas incluía los siguientes tipos de pruebas:
- Pruebas funcionales. Ejecutamos un amplio conjunto de pruebas diseñadas para verificar el rendimiento de la aplicación con respecto a los requisitos funcionales descritos en las historias de usuario. Esto garantizó que todas las características se implementaran correctamente y funcionaran según lo previsto, satisfaciendo las necesidades definidas del usuario.
- Pruebas de integración. Dado que la aplicación interactúa con varios servicios de terceros, como Primer y Onfido, la integración perfecta era crucial. Realizamos pruebas de integración para garantizar un flujo de datos y una funcionalidad fluidos entre la aplicación y estos servicios externos.
- Pruebas de compatibilidad. Probamos la aplicación en una amplia gama de modelos de dispositivos, sistemas operativos y resoluciones de pantalla. En total, ChitChat se probó en 24 dispositivos iOS y Android.
- Pruebas automatizadas. Nos centramos en la automatización de las pruebas frontend y backend, aprovechando la potencia de TypeScript para mejorar la claridad del código y la comprobación de tipos.
Además, supervisamos continuamente los comentarios de los usuarios, los traducimos en informes de errores claros con pasos detallados para reproducir los errores y los compartimos con los desarrolladores.
Automatización de pruebas
Nuestro éxito con las pruebas automatizadas dependía de la elección de herramientas eficaces.
Mocha, un marco de pruebas de JavaScript, proporcionó la estructura para escribir nuestras pruebas. Para las pruebas frontales, adoptamos Appium, un marco popular para automatizar las interacciones con aplicaciones móviles. Utilizamos WebdriverIO, una potente herramienta que actúa como cliente de Appium, para agilizar el proceso. Esto nos permitió escribir pruebas automatizadas que cubrían varios aspectos de la aplicación, desde el inicio de sesión del usuario y las funcionalidades de chat hasta las funciones bancarias básicas.
BrowserStack, una plataforma basada en la nube, ofrecía una ventaja fundamental: la posibilidad de ejecutar nuestras pruebas automatizadas en una amplia gama de dispositivos reales con distintas configuraciones.
Las pruebas automatizadas para el backend, es decir, las API de la aplicación, se escribieron en Jest, un marco de pruebas que utiliza TypeScript. La fuerza de TypeScript reside en su capacidad para comprobar los tipos de variables y funciones, mejorando la claridad del código y evitando errores durante el desarrollo.
Sin embargo, las herramientas por sí solas, por muy rápidas y fiables que sean, no pueden garantizar que todo vaya como la seda. Uno de los principales obstáculos a los que nos enfrentamos fue garantizar la estabilidad de las pruebas en una amplia variedad de dispositivos móviles. Esto se superó aprovechando la amplia colección de dispositivos reales de BrowserStack, lo que nos permitió realizar pruebas en hardware real con diversas configuraciones.
Otro reto surgió debido a las numerosas integraciones de la aplicación con aplicaciones de terceros. Estas integraciones añadían complejidad, especialmente para las pruebas automatizadas. Las pruebas para estas funcionalidades se escribían a menudo utilizando webhooks (un método de comunicación entre aplicaciones), pero su inestabilidad requería frecuentes ajustes del código.
Por último, la ejecución paralela de las pruebas, aunque ofrece mejoras de eficiencia, a veces provoca problemas de inestabilidad. En algunos casos, las pruebas pasaban dos veces pero fallaban a la tercera. Para solucionar este problema, dividimos estratégicamente las pruebas en tres grupos en función de su funcionalidad. Las pruebas de dos grupos se ejecutaban simultáneamente para conseguir la máxima velocidad, mientras que el grupo que contenía las pruebas inestables se ejecutaba secuencialmente. Este planteamiento resolvió eficazmente la inestabilidad y garantizó la coherencia de los resultados de las pruebas.
La estrategia de pruebas aplicada alcanzó una proporción aproximada del 70% de pruebas automatizadas y el 30% de pruebas manuales. Este énfasis en la automatización produjo beneficios significativos. Las pruebas automatizadas aceleraron la ejecución de las pruebas, lo que nos permitió cubrir una gama más amplia de funcionalidades con mayor eficacia. Así se identificaron y resolvieron más rápidamente los errores, lo que en última instancia contribuyó a una aplicación más segura y estable.
Errores encontrados
La mayoría de los errores encontrados se referían al procesamiento de transacciones y a la introducción de datos.
Resultado real: No ocurre nada después de tocar el botón de retroceso en la página 'Seleccionar país'.
Resultado esperado: No ocurre nada después de tocar el botón de retroceso en la página 'Seleccionar país'.
Resultado real: El mensaje de validación se muestra para los usuarios con correos electrónicos ya verificados.
Resultado esperado: El mensaje de validación se muestra para los usuarios con correos electrónicos ya verificados.
Resultado real: El texto del mensaje de validación desborda el contenedor dedicado.
Resultado esperado: El texto del mensaje de validación se ajusta a los límites del contenedor.
Resultado
Con la ayuda de QAwerk, ChitChat consiguió lanzar a tiempo su producto mínimo viable (MVP) en un plazo extraordinariamente corto. La aplicación Chit-Chat se lanzó en marzo tras sólo 3,5 meses de desarrollo, superando las expectativas de rapidez y eficacia. La noticia del lanzamiento de la aplicación tuvo una acogida positiva, como demuestra la cobertura en los principales medios de comunicación africanos y mundiales.
A medida que Chit-Chat amplía sus funcionalidades y su base de usuarios en Zambia, Angola, Tanzania y Ghana, el equipo de QAwerk se asegura de que las futuras iteraciones mantengan los altos estándares de seguridad, experiencia de usuario y rendimiento establecidos durante la fase inicial de desarrollo.
En prensa
¿Necesita perfeccionar su aplicación de tecnología financiera antes de su lanzamiento?
HablemosHerramienta
Comentario del equipo de QAwerk
Yaroslav
Ingeniero de automatización de QA
Este proyecto ha sido un hito personal, ya que me ha ofrecido una experiencia interesante y un impulso significativo a mi desarrollo profesional. Obtuve una amplia experiencia práctica en la automatización de pruebas de aplicaciones móviles, dominando nuevas herramientas y tecnologías en el proceso. Mocha, WebdriverIO y Browserstack fueron fundamentales, ya que demostraron ser fiables, rápidos y fáciles de usar.
Kateryna
Ingeniera de automatización de control de calidad
Tuve que usar muchos sombreros diferentes en este proyecto. Hice algunas pruebas manuales de la aplicación móvil y el sistema CRM, luego cambié de marcha para escribir pruebas automatizadas tanto para el frontend como para el backend. La comunicación con el equipo del cliente fue fantástica - hicimos una lluvia de ideas sobre las mejores herramientas de automatización juntos y mantuvimos la conversación durante todo el desarrollo. Estoy muy orgulloso de los resultados y de la alta calidad de la aplicación que entregamos.
Relacionado en Blog
Las 15 mejores herramientas de pruebas para móviles en 2024
El desarrollo de aplicaciones móviles evoluciona a gran velocidad. Hay una aplicación para casi todo, desde las citas y el seguimiento de los ciclos de sueño hasta las citas con el médico y las reservas de ...
Leer másMétricas de pruebas de software más importantes
Las pruebas de productos son una etapa crucial en el desarrollo de software, y no toleran frivolidades. Se basa en herramientas y marcos de pruebas para llevar su producto de software a través de numerosos cas...
Leer más¿Impresionado?
ContrátenosOtros casos prácticos
Zazu
Ayudó a la aplicación de gestión financiera número 1 en África a eliminar los errores y a convertirse en miembro principal de Mastercard
BeFamily
Ayudamos a lanzar un producto sin errores y a triplicar el número de instalaciones
Magic Mountain
Ayudamos a la aplicación social de fitness número 1 en el Reino Unido a pasar de MVP a Premiumcon suscripciones que crecen a diario