ChitChat

Aplicación de comercio social con monederos integrados

a prueba de errores antes del primer lanzamiento y probada continuamente por QAwerk

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 clientes

Pruebas 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ón

Pruebas 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ón

Desafí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: El usuario no puede insertar espacios entre palabras al introducir un motivo de envío.

Resultado esperado: El usuario puede introducir el motivo de envío utilizando espacios.

Bug

Resultado real: El importe de la tasa de transacción es incorrecto: la tasa por 10 $ se calcula como 1,49 $.

Resultado esperado: La comisión por transacción debería ser de 0,30$ (3% del importe).

Bug

Resultado real: En el paso en el que el usuario introdujo un código de acceso para confirmar la transacción, se produjo un error.

Resultado esperado: La transacción se realiza sin errores.

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

Con la integración de la comunicación, las transacciones financieras y el pago de facturas en una sola plataforma, ChitChat tiene el potencial de impulsar el crecimiento económico, fomentar el espíritu empresarial y promover la inclusión financiera en toda África."

Empresa líder de medios digitales en África

Desarrollado en colaboración con Mastercard, ChitChat supone un importante paso adelante en el ámbito del comercio social, ofreciendo a los usuarios una plataforma cómoda y segura tanto para la comunicación como para las interacciones financieras.

Comunidad mundial de profesionales de las finanzas

Las funciones de tarjetas y pagos de ChitChat, respaldadas por la integración con Mastercard, se desplegarán en una versión beta para Angola, Tanzania y Ghana, y se añadirán más mercados este año.

Publicación panafricana sobre innovación y tecnología en todo el continente.
Solo quería agradecer enormemente al equipo de QAwerk. Valentin y Aliaksei han estado haciendo un gran trabajo durante las últimas semanas: va más allá de la llamada, dado que trabaja para QAwerk y no para Union54. Nuestro lanzamiento de producción hasta ahora ha estado libre de errores gracias a ambos, y Aliaksey está construyendo una serie de regresión robusta en Cypress. El equipo mostró un gran trabajo en equipo y compromiso, un placer tenerlo a bordo.
Jon Wade
Jon Wade, CTO (Director Tecnológico) de Union54

¿Necesita perfeccionar su aplicación de tecnología financiera antes de su lanzamiento?

Hablemos

Herramienta

JiraJira
Qase.ioQase.io
TypeScriptTypeScript
BrowserStackBrowserStack
MochaMocha
AppiumAppium
PostmanPostman
70%de escenarios automatizados
200+Más de 200 errores detectados
24dispositivos utilizados
4profesionales en el equipo

Comentario del equipo de QAwerk

Yaroslav, QA engineer

Yaroslav, QA engineer

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

Kateryna
Ingeniero de automatización de QA

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.

¿Impresionado?

Contrátenos

Otros casos prácticos

Zazu

Zazu

Zambia

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

BeFamily

Estados Unidos

Ayudamos a lanzar un producto sin errores y a triplicar el número de instalaciones

Magic Mountain

Magic Mountain

Reino Unido

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