Laissez-nous vos coordonnées, nous vous enverrons notre livre blanc par e-mail.
Je consens à ce que mes données personnelles soient traitées afin d'envoyer du matériel de marketing personnalisé conformément à la directive sur la protection des données. Politique de confidentialité. En confirmant la soumission, vous acceptez de recevoir du matériel de marketing
Merci !

Le formulaire a été soumis avec succès.
Vous trouverez de plus amples informations dans votre boîte aux lettres.

Innowise est une société internationale de développement de logiciels à cycle complet fondée en 2007. Nous sommes une équipe de plus de 1600+ professionnels de l'informatique développant des logiciels pour d'autres professionnels dans le monde entier.
À propos de nous
Innowise est une société internationale de développement de logiciels à cycle complet fondée en 2007. Nous sommes une équipe de plus de 1600+ professionnels de l'informatique développant des logiciels pour d'autres professionnels dans le monde entier.

Tests automatisés de logiciels: multiplication par deux de la vitesse de lancement des fonctionnalités

Innowise a exécuté les tests automatisés de logiciels pour garantir que l'intégration de nouvelles fonctionnalités du système ne compromette pas l'intégrité des fonctionnalités existantes.

Client

Industrie
Technologies de l'information
Région
Suisse
Client depuis
2023

Notre client est un fournisseur de solutions ERP en nuage conçues pour renforcer l'efficacité opérationnelle et la résilience contre les perturbations opérationnelles.

Les informations détaillées concernant le client ne peuvent pas être divulguées dans le cadre de l'accord de confidentialité.

Défi

Vérification de la stabilité du système ERP après l'intégration de nouvelles fonctionnalités

Notre client a introduit une nouvelle fonctionnalité dans son système ERP et l'a intégrée à la version existante. Il s'est appuyé sur Innowise pour évaluer la stabilité du logiciel déployé. Nous avons fourni services d'essais automatisés de logiciels, Il s'agit d'identifier les obstacles potentiels dans le système et de les résoudre.

Solution

Recourir à des services de tests automatisés de logiciels pour identifier et résoudre les problèmes potentiels.

Innowise a amélioré le système ERP du client grâce à une approche à multiples facettes des tests automatisés de logiciels. Elle a incorporé des tests de fumée, fonctionnels et de régression, tous exécutés dans le cadre d'un pipeline d'intégration continue/de livraison continue (CI/CD). Les tests de fumée ont été utilisés pour vérifier rapidement la stabilité des fonctionnalités clés, tandis que les tests fonctionnels ont été essentiels pour examiner l'exactitude de chaque fonctionnalité. Les tests de régression ont été essentiels pour s'assurer que les nouvelles mises à jour n'avaient pas d'incidence négative sur les fonctionnalités existantes. L'intégration de ces méthodes de test dans le pipeline CI/CD a permis de rationaliser le processus de développement. Cette approche a permis d'identifier et de résoudre rapidement les problèmes et de garantir un déploiement cohérent de fonctionnalités robustes et de haute qualité dans le système ERP.

Évaluation des cas de test pour l'automatisation

Dès le départ, nous avons été chargés de passer au peigne fin les cas de test élaborés par les testeurs manuels. En nous appuyant sur notre vaste expérience en matière de tests de logiciels, nous nous sommes plongés dans chaque cas, en exécutant manuellement les étapes de chaque cas de test afin d'évaluer sa complexité et la viabilité de l'automatisation. Notre objectif était de déterminer la manière la plus efficace d'automatiser les tâches répétitives et fastidieuses sans nuire à la précision des résultats des tests.

Mise en œuvre des tests de fumée

Nos testeurs ont mis en place une collection de cas de tests de fumée préenregistrés qui sont entrés en action à chaque nouvelle version. Ces tests étaient essentiels pour confirmer que les principales fonctionnalités du logiciel fonctionnaient, en garantissant la cohérence et la rigueur. Si un test automatisé signalait un problème, il alertait immédiatement notre équipe, ce qui permettait d'identifier rapidement le problème et d'y remédier.

La flexibilité de notre processus a permis à notre équipe de résoudre rapidement tous les problèmes découverts lors de la construction. Nous avons rapidement mis en œuvre les ajustements nécessaires et redéployé la version sans délai, ce qui a permis de minimiser les perturbations.

Intégrer les tests fonctionnels dans chaque sprint

Nous sommes passés en douceur de la vérification à grande échelle des tests de fumée à l'approche ciblée et méticuleuse des tests fonctionnels. Cela a permis de s'assurer que chaque nouvelle mise à jour était efficace de manière isolée et s'intégrait de manière transparente aux composants logiciels existants. Nous avons effectué des tests fonctionnels à chaque sprint afin que chaque développement incrémental soit rigoureusement évalué, ce qui a permis de maintenir la qualité et la cohérence globales du logiciel.

Tests de régression des logiciels

Nous avons suivi un processus rationalisé mais approfondi pour mettre en œuvre tests de régression automatisés. Notre équipe a mis en place un environnement de test qui reflétait les conditions de production réelles, garantissant ainsi des résultats aussi précis que possible. Grâce à Selenium, nous avons automatisé les scripts de test de régression, ce qui a considérablement amélioré l'efficacité, un facteur crucial pour les systèmes complexes.

Une fois automatisés, nous avons exécuté ces scripts par rapport à la dernière version pour vérifier les incohérences ou les défaillances. Après l'exécution des tests, nous avons analysé les résultats de manière approfondie, en mettant en évidence les bogues ou les problèmes émergents.

Si nous détections des problèmes, nous les corrigeons rapidement en modifiant le code et en ré-exécutant les tests pour confirmer l'efficacité de nos corrections. Ce cycle de test, d'analyse et d'amélioration était une constante à chaque nouvelle mise à jour du logiciel, garantissant la stabilité du logiciel et les fonctionnalités prévues. Cette approche efficace des tests de régression a été essentielle pour maintenir la fiabilité et les performances du logiciel, réduisant ainsi le risque de bogues et offrant une expérience fluide à l'utilisateur.

Pipeline d'intégration continue/de livraison continue (CI/CD)

En plus de notre processus de test rigoureux, nous avons également intégré nos tests dans le pipeline d'intégration continue/de livraison continue (CI/CD), améliorant ainsi l'efficacité et la réactivité de notre cycle de développement. Nous avons utilisé l'outil Allure pour établir des rapports détaillés, ce qui nous a permis d'obtenir des informations claires sur les résultats des tests. Cette intégration nous a permis de mettre en place un système automatisé dans lequel les tests étaient lancés chaque nuit. Cette routine de tests nocturnes a permis de s'assurer que tout nouveau changement était immédiatement évalué, ce qui a permis d'identifier et de résoudre rapidement les problèmes. L'intégration des rapports Allure dans notre pipeline CI/CD a permis à notre équipe d'avoir accès à des données de test complètes tous les matins, ce qui a simplifié la prise de décision et a permis de maintenir une attention constante sur la qualité et la stabilité. Cette intégration a accéléré notre processus de test et renforcé la fiabilité de chaque logiciel livré.

Étapes détaillées de notre pipeline CI/CD :

  • Code: Les développeurs ont écrit et affiné le code, en veillant à ce qu'il soit conforme à nos normes en matière de fonctionnalité et de conception.
  • Engagement: Nous avons ensuite transféré le code mis à jour dans notre système de contrôle de version, marquant ainsi le premier point de contrôle dans le pipeline.
  • Créez des: Ce code engagé a fait l'objet d'un processus de construction, au cours duquel il a été converti en une forme exécutable, prête à être testée.
  • Tests unitaires: Nous avons soumis la construction à des tests unitaires, au cours desquels chaque composant a été testé pour en vérifier l'exactitude. Ces tests ont été effectués afin de garantir que chaque composant fonctionne parfaitement.
  • Tests de fumée: Après les tests unitaires, nous avons effectué des tests de fumée pour vérifier rapidement si les fonctionnalités critiques fonctionnaient comme prévu.
  • Engagement: Après les tests de fumée, nous remettons le code dans le système de contrôle de la version, en y incorporant les modifications apportées à la suite des tests.
  • Révision: Nous avons examiné minutieusement chaque engagement, en veillant à ce que les modifications respectent nos normes de qualité et soient conformes aux objectifs du projet.
  • Mise en scène: La construction a été déplacée dans un environnement de mise à l'essai, qui reflète étroitement la configuration de la production, pour des tests supplémentaires.
  • Tests du système: Dans la phase d'essai, nous avons effectué des tests complets du système afin de valider la version dans un environnement qui simule l'utilisation réelle.
  • Production: Une fois que la version a passé avec succès toutes les étapes de test, elle a été déployée dans l'environnement de production, la rendant ainsi disponible pour les utilisateurs finaux.

Technologies

CQA

Python, Pytest, Selenium, Allure

Back-end

Java, Spring, Hibernate

VSC

Git, Gitlab

Cloud

AWS Grafana IAM, SNS, SQS, KMS, RDS(PostgreSQL), S3, SES

DevOps

Gitlab, Docker, Docker Compose

Processus

Méthodologie agile et structure des sprints

Dans notre projet, nous avons strictement adhéré à la méthodologie Agile, en structurant notre processus de développement en sprints de deux semaines. Cette approche nous a permis de diviser le projet en morceaux gérables, garantissant ainsi la cohérence et l'efficacité de chaque phase.

Gestion des tâches et collaboration au sein de l'équipe

Au début de chaque sprint, nous avons défini des objectifs et des tâches clairs, qui ont fait l'objet d'un suivi à l'aide de Jira. Cet outil a permis à notre équipe de rester alignée et sur la bonne voie. Nous l'avons utilisé non seulement comme outil de suivi des tâches, mais aussi comme centre de collaboration et de communication, afin que chaque membre de l'équipe soit toujours au courant des derniers développements et priorités.

Revue de sprint et rapports détaillés

À l'approche de la fin de chaque sprint, notre attention s'est portée sur la consolidation de notre travail et la préparation de la revue de sprint. Nous avons soigneusement compilé des rapports détaillés qui mettaient en évidence la couverture et les résultats de nos tests. Ces rapports étaient plus qu'un simple résumé des tâches accomplies, ils fournissaient une analyse approfondie de ce que nous avions réalisé, des défis que nous avions rencontrés et de la manière dont nous les avions surmontés. Ils incluaient également un retour d'information sur nos processus de test et sur les enseignements que nous pouvions en tirer pour le prochain sprint.

Équipe

3

Ingénieurs du AQA

1

Ingénieur DevOps

Résultats

Accélération du déploiement des fonctionnalités et réduction de 50% des bogues en production

La mise en œuvre de tests automatisés pour le système ERP de notre client a permis des améliorations et des gains d'efficacité notables:

  • Mise à disposition plus rapide de nouvelles fonctionnalités: grâce aux tests automatisés, les nouvelles fonctionnalités ont été mises à disposition deux fois plus rapidement que dans le cadre du processus manuel précédent.
  • Réduction des bogues: L'intégration de CI/CD a permis de réduire de 50% le nombre de bogues atteignant la production, ce qui a considérablement amélioré la fiabilité du logiciel.

Au vu de ce résultat positif, notre client a exprimé son enthousiasme pour notre collaboration. Il reconnaît la valeur que notre expertise et la mise en œuvre de technologies de pointe apportent à son entreprise. À l'avenir, nous travaillerons en étroite collaboration avec notre client pour tirer parti des succès obtenus et explorer d'autres possibilités d'amélioration de ses systèmes et processus.

Durée du projet
  • Septembre 2023 - En cours

2x

augmentation de la fonctionnalité vitesse de libération

50%

moins de bogues atteignant la production

Contactez nous!

Réserver un appel ou remplissez le formulaire ci-dessous et nous vous contacterons dès que nous aurons traité votre demande.

    S’il vous plaît, ajouter les détails du projet, la durée, la pile technologique, IT spécialistes nécessaires et d'autres informations pertinentes
    S’il vous plaît, ajouter les détails du projet, la durée, la pile technologique, IT spécialistes
    nécessaires et d'autres informations pertinentes
    Joindre des documents supplémentaires au besoin
    Charger file

    Vous pouvez joindre jusqu'à 1 fichier de 2MB au total. Fichiers valides : pdf, jpg, jpeg, png

    Nous vous informons que lorsque vous cliquez sur le bouton Envoyer, Innowise traitera vos données personnelles conformément à notre Politique de confidentialité dans le but de vous fournir des informations appropriées.

    Que se passe-t-il ensuite?

    1

    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.

    2

    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.

    3

    Nous organisons une réunion avec vous pour discuter de l'offre et parvenir à un accord.

    4

    Nous signons un contrat et commençons à travailler sur votre projet le plus rapidement possible.

    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.

    flèche