Développement et tests (TDD, BDD et XP)

Développement sur mesure

Vous avez besoin d'aide pour mener à bien votre projet ?
Site vitrine, boutique e-commerce, logiciel, application, nous pouvons intervenir sur tout type de développement.
De nombreuses solutions clé en main existent sur le marché : CMS, framework, outil SASS.
La plupart du temps cependant il est nécessaire de faire des ajustements pour sortir du cadre proposé par la solution de base :

  • Besoin d'un design spécifique pour mettre en avant votre marque ou votre entreprise
  • Besoin de créer des fonctionnalités dédiées à votre activité, à votre métier
  • Besoin d'ajouter des modules complémentaires pour répondre à des besoins très précis

Nos équipes techniques peuvent vous accompagner pour adapter la solution à vos besoins.
Que ce soit pour un nouveau projet, une refonte ou encore une maintenance de solution existante.
Nous maitrisons les technologies suivantes :

Dimension éco-responsable

En plus de la dimension technique, notre équipe est sensibilisée aux questions d'éco-responsabilité en matière de création de solutions IT.
Labellisés Numérique Responsable depuis 2023, nous plaçons l'éco-conception au centre de nos travaux, aussi bien en phase de conception qu'en phase de réalisation.
Nous sommes vigilants quant au respect des bonnes pratiques et confrontons systématiquement nos solutions à l'écoindex pour toujours avoir une solution à la fois robuste et la moins énergivore possible.

N'hésitez-pas à prendre contact avec nous pour en savoir plus sur nos actions et stratégies d'écoconception.

Tests

Pour chaque nouveau projet, nous mettons en place une stratégie de tests afin de sécuriser au maximum les développements et d'éviter le plus possible les bugs et les régressions.

Tests unitaires

Les tests unitaires nous permettent de tester une brique de code au plus bas niveau, par exemple une simple fonction.
Chaque développeur qui ajoute une nouvelle fonctionnalité va tester son code au moyen d'un test unitaire pour vérifier que tout fonctionne comme prévu.

Tests d'intégration

Les tests d'intégration vont nous permettre de tester un enchaînement de plusieurs fonctionnalités, autrement dit de faire un test plus large qu'un test unitaire, de tester le code de plusieurs développeurs à la fois.

Tests croisés

Le principe du test croisé est qu'un développeur va tester une fonctionnalité développée par un autre développeur.
Une des dérive des tests unitaires, c'est qu'un développeur va tester uniquement le code de production qu'il a créé pour répondre à la fonctionnalité.
Sauf que ce code, il l'a imaginé à partir de sa compréhension de la fonctionnalité.
Or s'il est passé à côté d'une règle de gestion, il aura oublié de coder une règle, et son test associé ne sera pas complet.
Une solution pour contrer ça est d'utiliser la méthode TDD comme décrit plus loin.
Une deuxième solution plus haut niveau est de demander à quelqu'un d'autre de tester la fonctionnalité qui a été développée. Ainsi on obtient 2 tests avec 2 compréhensions différentes de la même fonctionnalité.

Tests de bout-en-bout

Le test bout-en-bout ou end-to-end est un test du produit final, comme le fera l'utilisateur final.
Par exemple pour un site web, il s'agit de tester une fonctionnalité de l'application directement depuis le navigateur.
Pour éviter d'avoir à tester à chaque fois "manuellement" toutes les fonctionnalités de l'application via un navigateur, nous utilisons des outils qui simulent un navigateur et qui nous permettent d'écrire des tests qui seront joués de manière automatique.
Le test bout-en-bout est un très bon moyen pour éviter les régressions, surtout s'il est intégré à une chaine d'intégration et de déploiement continus, voir la page dédiée.

Méthode TDD

La méthode TDD (Test Driven Development) est une méthode de développement piloté par les tests.
Le principe est simple : écrire les tests avant le code de production associé.
En partant des tests, on part en fait des règles de gestion de la fonctionnalité à développer.
On va prendre toutes les règles, qui représentent en quelques sortes notre cahier des charges, et on va écrire un test unitaire et/ou d'intégration pour chaque règle.
Ainsi on est sûr de balayer toutes les règles et de ne rien oublié.

Pour en savoir plus, n'hésitez-pas à nous contacter !