ChitChat

Application de commerce social avec portefeuilles intégrés

déboguée avant la première version et testée en continu par QAwerk

ChitChat est une application qui combine messagerie sécurisée et paiements. Elle permet aux utilisateurs à travers l’Afrique de discuter entre eux via une plateforme cryptée. Avec ChitChat, il est possible d’envoyer des paiements instantanés à ses amis et à sa famille dans le cadre de conversations en ligne.

Tous les clients

Test d’applications mobiles

Nous avons aidé ChitChat à préparer son application mobile pour sa sortie publique. Nos ingénieurs QA ont veillé à ce que l’application fonctionne parfaitement sur un large éventail d’appareils iOS et Android spécifiques au marché cible. Nous avons concentré nos efforts sur la garantie d’une sécurité, de performances et d’une convivialité optimales.

En savoir plus

Tests automatisés

Nos ingénieurs en automatisation de l’assurance qualité ont aidé ChitChat à mettre en place des workflows de tests automatisés efficaces afin de couvrir un large éventail de fonctionnalités dans un délai court. Nous visions un ratio de 70 % de tests automatisés pour 30 % de tests manuels, ce qui a permis un lancement rapide et sans obstacle.

Défi

ChitChat s’est tourné vers QAwerk alors qu’il en était encore aux premières étapes de développement, à l’élaboration de l’architecture centrale et des scénarios utilisateurs. L’entreprise nous a engagés pour mettre en place et diriger un processus d’assurance qualité complet, depuis les fondations jusqu’à la fin. Cela comprenait à la fois des tests manuels et automatisés afin de garantir une expérience utilisateur fluide et sécurisée.

La nature innovante de l’application ChitChat présentait des défis de test uniques :

  • Tests approfondis des paiements: la fonctionnalité de paiement dans le chat nécessitait des tests rigoureux. Cela exigeait l’accès à un ensemble diversifié de cartes bancaires de test et à plusieurs numéros de téléphone de test afin de simuler différents scénarios de paiement.
  • Spécificités du marché et fragmentation des appareils : contrairement aux utilisateurs typiques d’applications mobiles en Europe ou en Amérique, le public cible en Zambie utilise principalement différents modèles de téléphones. Nous avons remédié à cela en étudiant les données d’utilisation et en constituant un ensemble complet de téléphones de test reflétant les appareils les plus populaires en Zambie. La liste des appareils avec différentes configurations était longue.
  • Normes de sécurité renforcées : l’application traitant des transactions financières, nous devions dépasser les attentes standard en matière de qualité. Nous devions mettre en œuvre des stratégies de test exceptionnellement approfondies et complètes afin de garantir la sécurité et la fiabilité de l’application lors du traitement de l’argent des utilisateurs.

Voyons plus en détail comment nous avons relevé ces défis.

Solution

Nous avons participé activement au processus de développement, en analysant chaque scénario utilisateur dès qu’il était disponible et en identifiant les lacunes potentielles nécessitant des éclaircissements. Sur la base des scénarios utilisateurs, nous avons créé des scénarios de test robustes couvrant toutes les interactions possibles avec l’utilisateur.

Nous avons effectué des tests manuels approfondis et mis en place des cadres de test automatisés pour les aspects backend et frontend de l’application. Notre plan de test comprenait les types de tests suivants :

  • Tests fonctionnels. Nous avons exécuté une suite complète de tests conçus pour vérifier les performances de l’application par rapport aux exigences fonctionnelles décrites dans les récits d’utilisateurs. Cela a permis de s’assurer que toutes les fonctionnalités étaient correctement implémentées et fonctionnaient comme prévu, répondant ainsi aux besoins définis des utilisateurs.
  • Tests d’intégration. Étant donné que l’application interagit avec divers services tiers tels que Primer et Onfido, une intégration transparente était essentielle. Nous avons effectué des tests d’intégration afin de garantir un flux de données et un fonctionnement fluides entre l’application et ces services externes.
  • Tests de compatibilité. Nous avons testé l’application sur un large éventail de modèles d’appareils, de systèmes d’exploitation et de résolutions d’écran. Au total, ChitChat a été testé sur 24 appareils iOS et Android.
  • Tests automatisés. Nous nous sommes concentrés sur l’automatisation des tests front-end et back-end, en tirant parti de la puissance de TypeScript pour améliorer la clarté du code et la vérification des types.

De plus, nous surveillons en permanence les commentaires des utilisateurs, que nous traduisons en rapports de bogues clairs, accompagnés d’étapes détaillées pour reproduire les bogues, et que nous partageons avec les développeurs.

Automatisation des tests

Notre succès en matière d’automatisation des tests reposait sur le choix d’outils efficaces.

Mocha, un framework de test JavaScript, nous a fourni la structure nécessaire à la rédaction de nos tests. Pour les tests front-end, nous avons adopté Appium, un framework populaire permettant d’automatiser les interactions avec les applications mobiles. Nous avons utilisé WebdriverIO, un outil puissant qui agit comme un client Appium, pour rationaliser le processus. Cela nous a permis d’écrire des tests automatisés couvrant divers aspects de l’application, depuis la connexion des utilisateurs et les fonctionnalités de chat jusqu’aux fonctionnalités bancaires de base.

BrowserStack, une plateforme basée sur le cloud, offrait un avantage décisif : la possibilité d’exécuter nos tests automatisés sur une vaste gamme d’appareils réels avec différentes configurations.

Les tests automatisés pour le backend, à savoir les API de l’application, ont été écrits dans Jest, un framework de test qui utilise TypeScript. La force de TypeScript réside dans sa capacité à vérifier les types de variables et de fonctions, ce qui améliore la clarté du code et prévient les erreurs pendant le développement.

Cependant, les outils seuls, aussi rapides et fiables soient-ils, ne peuvent garantir que tout se passera sans encombre. L’un des principaux obstacles auxquels nous avons été confrontés était d’assurer la stabilité des tests sur une grande variété d’appareils mobiles. Nous avons surmonté cet obstacle en tirant parti de la vaste collection d’appareils réels de BrowserStack, qui nous a permis de tester sur du matériel réel avec différentes configurations.

Un autre défi est apparu en raison des nombreuses intégrations de l’application avec des applications tierces. Ces intégrations ont ajouté de la complexité, en particulier pour les tests automatisés. Les tests de ces fonctionnalités étaient souvent écrits à l’aide de webhooks (une méthode de communication entre applications), mais leur instabilité nécessitait des ajustements fréquents du code.

Enfin, l’exécution parallèle des tests, tout en offrant des gains d’efficacité, a parfois entraîné des problèmes d’instabilité. Dans certains cas, les tests pouvaient réussir deux fois, mais échouer lors de la troisième exécution. Pour remédier à cela, nous avons stratégiquement divisé les tests en trois groupes en fonction de leurs fonctionnalités. Les tests de deux groupes ont été exécutés simultanément pour une vitesse maximale, tandis que le groupe contenant les tests instables a été exécuté séquentiellement. Cette approche a permis de résoudre efficacement le problème d’instabilité et de garantir des résultats de test cohérents.

La stratégie de test mise en œuvre a permis d’atteindre un ratio d’environ 70 % de tests automatisés pour 30 % de tests manuels. L’accent mis sur l’automatisation a apporté des avantages significatifs. Les tests automatisés ont accéléré l’exécution des tests, nous permettant de couvrir plus efficacement un plus large éventail de fonctionnalités. Cela a permis d’identifier et de résoudre plus rapidement les bogues, contribuant ainsi à une application plus sûre et plus stable.

Bugs détectés

La plupart des bugs que nous avons rencontrés concernaient le traitement des transactions et la saisie des données.

Résultat réel: rien ne se passe après avoir appuyé sur le bouton Retour de la page « Sélectionner le pays ».

Résultat attendu: l’utilisateur peut utiliser le bouton Retour pour revenir à la page précédente.

Bug

Résultat réel: le message de validation s’affiche pour les utilisateurs dont l’adresse e-mail a déjà été vérifiée.

Résultat attendu: aucun message de validation ne s’affiche pour les utilisateurs qui ont terminé la vérification.

Bug

Résultat réel: le texte du message de validation dépasse les limites du conteneur dédié.

Résultat attendu: le texte du message de validation s’affiche dans les limites du conteneur.

Résultat

Avec l’aide de QAwerk, ChitChat a réussi à lancer son produit minimum viable (MVP) dans des délais remarquablement courts. L’application Chit-Chat a été lancée en mars après seulement 3,5 mois de développement, dépassant les attentes en termes de rapidité et d’efficacité. La nouvelle du lancement de l’application a été accueillie favorablement, comme en témoignent les articles publiés dans les principaux médias africains et internationaux.

Alors que Chit-Chat étend ses fonctionnalités et sa base d’utilisateurs en Zambie, en Angola, en Tanzanie et au Ghana, l’équipe de QAwerk veille à ce que les futures itérations maintiennent les normes élevées de sécurité, d’expérience utilisateur et de performance établies lors de la phase de développement initiale.

Dans la presse

En intégrant les communications, les transactions financières et le paiement des factures au sein d’une seule et même plateforme, ChitChat a le potentiel de stimuler la croissance économique, d’encourager l’entrepreneuriat et de promouvoir l’inclusion financière à travers toute l’Afrique.

Entreprise leader dans le domaine des médias numériques en Afrique

Développé en partenariat avec Mastercard, ChitChat marque une avancée significative dans le domaine du commerce social, offrant aux utilisateurs une plateforme pratique et sécurisée pour leurs communications et leurs interactions financières.

Communauté mondiale de professionnels de la finance

Les fonctionnalités de carte et de paiement de ChitChat, prises en charge par l’intégration Mastercard, seront déployées en version bêta en Angola, en Tanzanie et au Ghana, et d’autres marchés seront ajoutés cette année.

Publication panafricaine retraçant les innovations et les développements technologiques à travers le continent
L’équipe était diligente, compétente et enthousiaste à propos du projet, toujours prête à faire un effort supplémentaire. La qualité du produit était excellente grâce à l’équipe, qui a détecté 99 % des bogues ou des exigences manquantes bien avant qu’ils n’atteignent le système de production. Je recommande vivement cette équipe et n’hésiterais pas à faire de nouveau appel à elle.
star star star star star
Jon Wade
Travailler avec QAwerk a été une expérience formidable. Leur expertise et leur souci du détail ont contribué à accélérer la mise en service de notre application.
star star star star star
Musonda Chalwe

Outils

JiraJira
Qase.ioQase.io
JestJest
TypeScriptTypeScript
BrowserStackBrowserStack
MochaMocha
WebdriverIOWebdriverIO
AppiumAppium
PostmanPostman
70% de scénarios automatisés
200+bogues détectés
24appareils utilisés
4professionnels dans l’équipe

Commentaires de l’équipe QAwerk

Yaroslav

Yaroslav
ingénieur en automatisation QA

Ce projet a été un moment fort pour moi, car il m’a permis d’acquérir une expérience intéressante et de faire progresser considérablement mon développement professionnel. J’ai acquis une vaste expérience pratique dans l’automatisation des tests d’applications mobiles, tout en maîtrisant de nouveaux outils et technologies. Mocha, WebdriverIO et Browserstack ont joué un rôle déterminant, se révélant fiables, rapides et conviviaux.

Kateryna

Kateryna
Ingénieure en automatisation de l'assurance qualité

J’ai pu endosser plusieurs casquettes dans le cadre de ce projet ! J’ai effectué des tests manuels sur l’application mobile et le système CRM, puis je suis passée à la rédaction de tests automatisés pour le front-end et le back-end. La communication avec l’équipe du client a été fantastique : nous avons réfléchi ensemble aux meilleurs outils d’automatisation et avons maintenu le dialogue tout au long du développement. Je suis très fière des résultats et de la qualité de l’application que nous avons livrée !

Media
Media
Media
Media

Impressionné ?

Engagez-nous

Autres études de cas

Magic Mountain

Magic Mountain

Royaume-Uni

Nous avons permis à l’application de fitness social n° 1 au Royaume-Uni de passer d’une offre MVP à une offre Premium, et le nombre de ses abonnés augmente chaque jour

BeFamily

BeFamily

États-Unis

Nous avons garanti un lancement sans aucun bug pour cette application, triplant ainsi le nombre d’installations prévu

Zazu

Zazu

Zambie

Nous avons aidé l’application de gestion financière n° 1 en Afrique à éliminer ses bugs et à devenir membre principal de Mastercard