Le formulaire a été soumis avec succès.
Vous trouverez de plus amples informations dans votre boîte aux lettres.
Sélection de la langue
Notre client est un important fournisseur de services de communication spécialisé dans les solutions de connectivité Internet, la vente de modems, l'approvisionnement en cartes SIM et la mise en place de bouquets de télévision.
Les informations détaillées concernant le client ne peuvent pas être divulguées dans le cadre de l'accord de confidentialité.
L'équipe de développement interne du client avait initialement mis en place un cadre personnalisé pour effectuer des tests automatisés sur leur application web. Cependant, ce cadre ne répondait pas aux normes attendues, ce qui se traduisait par des tests instables. L'instabilité a été aggravée par un manque d'intégration correcte avec le système d'intégration continue (CI). Cela a entraîné des retards dans les boucles de rétroaction et une augmentation des interventions manuelles de la part des équipes d'assurance qualité.
Face à ces défis, le client nous a demandé de lui fournir une solution robuste qui rationaliserait ses processus de test, réduirait les bogues de régression et accélérerait ses cycles de publication.
En relevant les défis du client, nous nous sommes attachés à élaborer une solution sur mesure qui améliorerait sa situation processus d'assurance qualité. Reconnaissant les inefficacités et les limites de leur cadre de test personnalisé existant, nous avons entrepris de développer une stratégie de test plus robuste, plus évolutive et plus efficace, adaptée spécifiquement à leurs besoins.
Sur la base de notre expérience en matière de tests automatisés d'applications webPour cette raison, nous avons élaboré une stratégie à deux cadres, employant à la fois Cypress et Playwright pour les tests de bout en bout. Nous avons choisi ces cadres en raison de leurs attributs uniques, qui sont reconnus pour leur stabilité, leur robustesse et leur compatibilité avec divers navigateurs et environnements.
Nos ingénieurs du CQA ont choisi Cypress pour ses capacités exceptionnelles de test de bout en bout. L'une des caractéristiques les plus remarquables de Cypress est son accès natif aux API des navigateurs, sans passer par des serveurs intermédiaires. Cela accélère considérablement l'exécution des tests et réduit la complexité des tests de bout en bout. Nous avons personnalisé Cypress pour qu'il s'intègre de manière transparente aux applications web du client, permettant l'exécution de tests en temps réel et des capacités de tests visuels. Cette configuration nous a permis de simuler avec plus de précision les interactions réelles des utilisateurs. Cela garantit que toutes les voies d'accès des utilisateurs ont été testées de manière approfondie avant que le code ne soit transféré à la production. Innowise a mis en œuvre le lancement des tests Cypress au sein de GitLab, démontrant la réussite des tests sur un serveur distant après le déploiement. Cela confirme la robustesse et la fiabilité de notre cadre de test dans un environnement d'intégration continue.
En revanche, Playwright s'est avéré idéal pour les tests frontaux et les tests API en raison de sa capacité à exécuter des tests sur tous les principaux navigateurs avec une configuration minimale. Il prend en charge les tests en mode headless, ce qui est crucial pour les environnements CI, et offre des outils robustes pour gérer les événements asynchrones et les interactions de pages complexes. Nous avons exploité la fonction d'exécution parallèle des tests de Playwright pour exécuter plusieurs tests simultanément dans différents environnements, ce qui a permis de réduire considérablement la durée totale des tests. En outre, le riche ensemble API de Playwright nous a permis de créer des scripts de test personnalisés qui imitent les comportements et les interactions complexes des utilisateurs. Cela a amélioré la couverture et la fiabilité de nos tests. En outre, nous avons réalisé des rapports complets à l'aide Allure pour suivre les résultats des tests, ce qui nous a permis d'obtenir des informations et des analyses claires à partir de nos intégrations Playwright.
Nous avons configuré chaque cadre pour l'aligner sur l'infrastructure existante du client. L'équipe d'Innowise a introduit des plugins et des extensions qui ont amélioré la fonctionnalité des frameworks et ont permis l'intégration avec d'autres outils dans la pile technologique du client. Par exemple, nous avons intégré Cypress aux services d'authentification du client pour gérer les connexions sécurisées pendant les tests. Nous avons également configuré Playwright pour capturer automatiquement des captures d'écran et des vidéos à des fins d'examen en cas d'échec des tests.
Les ingénieurs du CQA ont intégré Cypress et Playwright dans le pipeline CI sur Gitlab. Cette intégration nous a permis de mettre en place des exécutions de tests automatisées qui ont été déclenchées par chaque validation de code. En automatisant ces exécutions, nous nous sommes assurés que tout code nouveau ou modifié faisait l'objet de tests approfondis avant d'avancer dans le cycle de développement. Cette configuration a non seulement accéléré le processus de test, mais a également permis de détecter les bogues et les problèmes le plus tôt possible. Cela a permis de réduire le risque que des défauts atteignent la production. La fusion transparente de ces frameworks avec Gitlab CI a également facilité un flux de travail plus fluide, permettant aux développeurs de se concentrer davantage sur le développement des fonctionnalités et moins sur les tâches de test répétitives.
Pour renforcer encore les processus d'assurance qualité, nous avons capitalisé sur les outils de reporting avancés de Gitlab, en nous concentrant spécifiquement sur l'amélioration de la transparence et de la responsabilité entre l'équipe d'assurance qualité et le personnel d'encadrement. En adaptant ces outils pour générer des rapports détaillés en temps réel, nous avons fourni une ressource inestimable aux deux équipes pour accéder à des données de dernière minute sur l'état des différents tests.
Ces rapports ont été conçus pour être complets tout en étant faciles à interpréter. Ils comprennent des mesures clés telles que la couverture des tests, les taux d'échec et les temps d'exécution. Ce niveau de détail a permis aux responsables d'évaluer rapidement l'efficacité des tests et d'identifier les domaines nécessitant une attention particulière, sans avoir besoin de connaissances techniques approfondies. Pour l'équipe du CQA, ces rapports ont constitué un outil essentiel pour suivre les progrès, identifier les problèmes récurrents et valider la qualité de la base de code.
Innowise a développé une architecture de test évolutive conçue pour accueillir une gamme variée de tests, y compris des tests de fumée, des tests de régression et des tests complets de bout en bout. Cette architecture a été conçue pour répondre aux besoins immédiats du projet et fournir une base pour les initiatives de test futures. La nature modulaire de l'architecture a permis une adaptation et une mise à l'échelle aisées. Ainsi, à mesure que les exigences du client évoluaient, le cadre de test pouvait lui aussi évoluer sans nécessiter de modifications importantes.
Notre approche comprenait la mise en place d'un système centralisé de gestion des tests qui facilitait l'organisation et le suivi des cas de test, des résultats et des mesures. Ce système a joué un rôle essentiel dans la gestion de la complexité des multiples types de tests et dans la mise en place d'un flux de travail cohérent au cours des cycles de test. En mettant en œuvre des fonctions robustes d'enregistrement des données et d'analyse des résultats, nous avons fourni à l'équipe d'assurance qualité les outils nécessaires pour effectuer des évaluations détaillées de chaque cycle de test, ce qui est essentiel pour maintenir des normes élevées de qualité des logiciels.
Pour améliorer encore les processus d'assurance qualité, nous avons lancé des tests à l'aide de l'outil Xray Jira. Cette intégration nous a permis de suivre et de gérer les cas de test directement dans Jira, rationalisant ainsi la communication et la collaboration entre les équipes d'assurance qualité et de développement. En tirant parti des puissantes capacités de gestion des tests de Xray, nous avons conservé une vue d'ensemble des activités de test. L'équipe d'assurance qualité a également suivi la traçabilité des exigences jusqu'aux défauts, et a généré des rapports détaillés sur la couverture et l'exécution des tests. Cette intégration a considérablement renforcé notre capacité à identifier et à résoudre rapidement les problèmes, ce qui nous a permis de fournir des logiciels de haute qualité.
Reconnaissant le rôle critique du transfert de connaissances dans le succès de toute mise en œuvre technologique, nous avons organisé des sessions de formation approfondies spécifiquement adaptées à Cypress, étant donné son rôle central dans la stratégie de test du client. Ces sessions ont été structurées de manière à permettre aux équipes internes du client d'acquérir l'expertise nécessaire pour utiliser, maintenir et étendre les cadres de test de manière indépendante.
La formation a couvert une série de sujets essentiels, depuis l'installation et la configuration de base des outils de test jusqu'aux fonctionnalités avancées telles que les scripts d'automatisation des tests et la gestion de l'environnement. Nous avons également inclus des exercices pratiques conçus pour répondre à des scénarios réels auxquels l'équipe pourrait être confrontée, afin d'améliorer leurs compétences en matière de résolution de problèmes et leur confiance dans l'utilisation des outils.
Au-delà de la formation technique, nous avons souligné l'importance d'un état d'esprit stratégique dans les pratiques d'assurance qualité. Nous avons guidé l'équipe sur la façon de planifier et d'exécuter des tests qui s'alignent sur les objectifs plus larges de l'entreprise. Cette approche a permis de s'assurer que l'équipe n'était pas seulement compétente dans l'utilisation de la technologie, mais aussi dans l'intégration des processus d'assurance qualité dans leurs flux de travail quotidiens.
Back-end
REST API, JSON, Java
Design
Figma, Sketch, Zeplin
Services
Firebase (Analytics, Crashlytics, Cloud Messaging, App Distribution), GitLab, Jira, Confluence, Strapi, Slack
CQA
Test unitaire + intégration CI/CD via SonarQube, Cypress, Playwright
Le projet a démarré par des réunions de découverte afin de comprendre en profondeur les besoins et les défis spécifiques du client. Cette phase a été cruciale pour la mise en place de Cypress et de Playwright, pour s'assurer de leur compatibilité avec les systèmes existants du client et pour préparer le terrain pour une intégration transparente.
Nous avons personnalisé Cypress et Playwright pour répondre aux exigences uniques du client en matière de tests, et intégré ces frameworks dans le pipeline CI de GitLab. Cette intégration a permis d'automatiser le processus de test, ce qui permet de détecter et de résoudre rapidement les problèmes, et d'accélérer le cycle de développement.
Notre spécialiste du CQA a organisé des sessions de formation complètes sur Cypress afin de doter l'équipe du client des compétences nécessaires pour gérer et optimiser les cadres de test de manière indépendante. Ils ont également fourni une documentation détaillée et les meilleures pratiques pour soutenir la maintenance et l'amélioration continues des systèmes.
Tout au long du projet, nous avons maintenu une communication transparente via Slack et géré les tâches et les progrès via Jira. Cette approche a permis de s'assurer que toutes les parties prenantes étaient alignées de manière cohérente et que le projet était bien coordonné et sur la bonne voie.
1
Chef de projet
1
Chef d'équipe
1
Ingénieur automaticien en chef de l'assurance qualité
1
Analyste des données de test
4
Ingénieurs QA en automatisation / experts SDET
Après la mise en œuvre réussie des cadres de tests automatisés, le client est passé à un environnement d'automatisation des tests robuste qui apporte des améliorations opérationnelles significatives.
Cette refonte stratégique a permis de relever les défis initiaux du client grâce à une approche technologique sur mesure et à des conseils d'experts. En dotant l'équipe d'outils de pointe et de connaissances approfondies, nous avons jeté les bases d'une évolutivité permanente et d'améliorations opérationnelles continues.
3x
un déploiement plus rapide des versions
50%
moins de bogues en production
Après avoir reçu et traité votre demande, nous reviendrons vers vous pour détailler les besoins de votre projet et signer un accord de non-divulgation pour assurer la confidentialité des informations.
Après avoir examiné les exigences, nos analystes et nos développeurs élaborent une proposition de projet avec l'étendue des travaux, le nombre de membre de l'équipe, les délais et les coûts des coûts.
Nous organisons une réunion avec vous pour discuter de l'offre et parvenir à un accord.
Nous signons un contrat et commençons à travailler sur votre projet le plus rapidement possible.
2007-2024 Innowise. Tous droits réservés.
Politique de confidentialité. Politique en matière de cookies.
Innowise Sp. z o.o Ul. Rondo Ignacego Daszyńskiego, 2B-22P, 00-843 Varsovie, Pologne
En vous inscrivant, vous acceptez notre Politique de confidentialitéy compris l'utilisation de cookies et le transfert de vos informations personnelles.
Merci !
Votre message a été envoyé.
Nous traiterons votre demande et vous recontacterons dès que possible.
Merci !
Votre message a été envoyé.
Nous traiterons votre demande et vous recontacterons dès que possible.