Aller au contenu
XSIS
Parler à un ingénieur

Ingénierie logicielle

Assurance qualité (QA) et automatisation des tests

Des tests qui trouvent les défauts avant vos clients

Stratégie de test, suites automatisées, tests de performance et de sécurité, intégrés à la chaîne de livraison.

Présentation

Les tests de non-régression manuels ralentissent chaque mise en production et laissent pourtant passer des défauts. Tester uniquement à la fin transforme de petits problèmes en problèmes tardifs et coûteux. La qualité doit être intégrée à la manière dont le logiciel est livré.

Nous rédigeons une stratégie de test adaptée à vos risques, puis nous l’automatisons : tests unitaires et d’API exécutés à chaque modification, tests de bout en bout des parcours les plus importants, et contrôles de performance, d’accessibilité et de sécurité dans la même chaîne de livraison. Les tests manuels et exploratoires demeurent, ciblés là où l’humain trouve ce que les scripts manquent.

Nous testons les intégrations avec autant de soin que les écrans. Pour les flux de paiement, bancaires et ERP, cela signifie des jeux de données de test qui couvrent les rejets et les cas limites, des bacs à sable et des simulateurs partenaires, et des contrôles qui vérifient que les totaux se rapprochent à la fin.

Ce que nous livrons

  1. Stratégie de test

    Quels risques sont testés, à quel niveau, par qui et à quelle fréquence, validé avec vos responsables produit et ingénierie.

  2. Suites de tests automatisés

    Des tests unitaires, d’API et de bout en bout dans votre dépôt, lisibles par vos ingénieurs et exécutés à chaque modification.

  3. Seuils de qualité dans la chaîne de livraison

    Des tests, une couverture et des analyses qui bloquent une mise en production en cas d’échec, avec des résultats visibles de tous.

  4. Données et environnements de test

    Des données de test réalistes et anonymisées, et des environnements réinitialisables, pour que les tests donnent toujours le même résultat.

  5. Résultats des tests de performance

    Des tests de charge et de stress des parcours critiques avec k6 ou JMeter, qui montrent où et pourquoi le système ralentit.

  6. Résultats des tests de sécurité

    Des analyses automatisées avec OWASP ZAP et des contrôles des dépendances, avec des constats classés et suivis jusqu’à leur clôture.

  7. Contrôles d’accessibilité

    Des contrôles automatisés avec axe-core et des tests manuels au regard du niveau AA des WCAG 2.2 pour les parcours clés.

  8. Suivi de la qualité

    Tendances des défauts, résultats des tests et état de préparation de chaque version, réunis en un seul endroit.

Notre méthode

  1. 01

    Évaluer

    Nous examinons vos tests actuels, vos défauts récents et votre processus de mise en production, et nous identifions où les problèmes passent au travers.

  2. 02

    Planifier

    Nous rédigeons la stratégie de test et définissons avec vous les parcours et les risques à automatiser en priorité.

  3. 03

    Automatiser

    Nous construisons les suites et les données de test, et nous les intégrons à votre chaîne de livraison comme seuils de qualité.

  4. 04

    Étendre

    Nous ajoutons des tests de performance, de sécurité et d’accessibilité, ainsi que des tests d’intégration sur les bacs à sable des partenaires.

  5. 05

    Maintenir les suites en bon état

    Nous corrigeons rapidement les tests instables, retirons ceux qui n’apportent plus de valeur et formons votre équipe pour qu’elle s’approprie les suites.

Technologies

DevOps et observabilité
  • GitHub Actions
  • GitLab CI/CD
Tests
  • Playwright
  • Cypress
  • Selenium
  • Appium
  • Jest
  • JUnit
  • pytest
  • k6
  • Apache JMeter
  • Postman
  • OWASP ZAP
  • axe-core
Design et accessibilité
  • WCAG 2.2

Modes de collaboration

Questions et réponses

Faut-il automatiser tous nos tests ?

Non. Automatisez ce qui s’exécute souvent et doit toujours donner le même résultat : tests unitaires, tests d’API et parcours de bout en bout les plus importants. Réservez l’humain aux tests exploratoires, à l’ergonomie et aux nouvelles fonctionnalités encore en évolution. Une suite plus réduite, exécutée à chaque modification et qui n’échoue jamais au hasard, vaut mieux qu’une suite volumineuse à laquelle personne ne se fie.

Lien vers cette question
Quels outils de test utilisez-vous ?

Nous utilisons les outils adaptés à votre pile technologique et à votre équipe : Playwright ou Cypress pour les tests web de bout en bout, Appium pour le mobile, Jest, JUnit ou pytest pour les tests unitaires, Postman pour les contrôles d’API, k6 ou JMeter pour la performance et OWASP ZAP pour les analyses de sécurité. Nous conservons les tests dans votre dépôt et, autant que possible, dans le langage de vos ingénieurs, afin qu’ils puissent les maintenir.

Lien vers cette question
Qu’est-ce qui détermine le coût de l’automatisation des tests ?

Le nombre d’applications et de parcours dans le périmètre, la testabilité du code actuel, l’état de vos données et environnements de test, et le nombre d’intégrations à simuler. Une application ancienne sans points d’ancrage stables pour les tests demande plus d’effort qu’une application récente conçue en pensant aux tests. Nous commençons par les parcours les plus risqués, pour que la valeur arrive tôt.

Lien vers cette question
Pouvez-vous travailler avec notre équipe QA existante ?

Oui. Nous rejoignons souvent une équipe QA interne pour apporter des compétences en automatisation, prendre en charge les tests de performance ou de sécurité, ou absorber une période chargée. Nous convenons de la répartition du travail, utilisons les mêmes outils et le même backlog, et formons vos testeurs pour qu’ils étendent les suites que nous construisons.

Lien vers cette question
Comment testez-vous les intégrations avec les banques, les prestataires de paiement ou les ERP ?

Nous utilisons l’environnement de test ou le bac à sable du partenaire lorsqu’il existe, et des simulateurs dans le cas contraire, pour que les tests puissent s’exécuter à chaque modification sans dépendre d’un tiers. Les données de test couvrent les cas d’échec : paiements rejetés, délais dépassés, messages en double et défaillances partielles. Des contrôles de bout en bout confirment que les totaux se rapprochent d’un système à l’autre, et pas seulement que chaque appel a renvoyé un succès.

Lien vers cette question
Que se passe-t-il lorsque des tests automatisés deviennent peu fiables ?

Nous traitons un test peu fiable comme un défaut. Il est mis de côté pour ne pas bloquer les mises en production, sa cause est identifiée et corrigée, puis il est réintégré. Les causes courantes sont des données de test partagées, des hypothèses de synchronisation et des environnements instables. Nous suivons la stabilité des tests dans le temps, pour que la suite reste digne de la confiance de votre équipe.

Lien vers cette question
Comment suivrons-nous l’avancement ?

Vous disposez d’un directeur de projet désigné et d’un rythme régulier : une planification au début de chaque itération, une démonstration du logiciel fonctionnel à la fin, et un bref compte rendu écrit sur l’avancement, les risques et les décisions. Vous pouvez consulter à tout moment le backlog, le dépôt de code et les résultats des tests. Des comités de pilotage avec vos sponsors se tiennent à la fréquence de votre choix.

Lien vers cette question

Dites-nous ce que vous devez construire ou connecter.

Décrivez les systèmes, le calendrier et les contraintes. Les ingénieurs concernés prennent ensuite le relais.

  • Notre équipe vous appellera dans les 24 heures, sur le créneau de votre choix
  • Notre équipe est disponible 24 h/24, 7 j/7