Accéder au contenu principal

Articles

Affichage des articles du 2017

Mutation Testing, Introduction

Voici une bref introduction aux tests par mutation, que j'ai mis en place dans une mission chez mon client du moment. Le but du mutation testing  est de vérifier dans un premier temps si notre couverture de tests est fiable. En effet, il n'y pas de que la couverture de tests qui compte, mais également leur pertinence et leur efficacité. En quelques mot, il s'agit de mesurer le comportement de notre harnais de tests face à du code qui mute  (refactoring, correction de bug, refonte d'architecture, etc...) et ainsi déterminer si celui-ci couvre bien le cas pour lequel il a été conçu. Le principe étant lors de l'exécution des tests de faire muter notre code source et ainsi s'assurer que les mutants ont bien été éliminés : on entend par mutants, les parties de code source ayant muté. Il devient alors évident qu'un test bien fait se plantera dès lors qu'il rencontrera du code ayant un comportement autre que celui de prévu (il existe malheureusement des

Testcontainers, Introduction

Un petit article rapide pour parler d'un outil tout aussi simple d'utilisation que bien conçu : Testcontainers . En effet, à première vue Testcontainers semble être un outil banal, qui finalement va lancer des conteneurs Docker à votre place et cela dans le cadre d'un test d'intégration par exemple. Alors sur le fond oui, mais sur la forme il s'avère être un allié de poids dans notre façon de concevoir nos tests d'intégrations. Je l'ai par exemple testé et finalement intégré dans le cadre d'un test ayant besoin d'un MongoDB en quasiment 10 minutes montre en main. J'ai donc remplacé notre ancienne librairie (flapdoodle embeded mongo) en très peu temps au bénéfice de TC. Seul prérequis : avoir Docker installé sur vos postes de développement et votre CI. Pour plus de détail sur la mise en place de Testcontainers, rendez-vous mon article sur mon Wiki pro  Reservoir code . Introduction a Testcontainers Bonne lecture, Crédit photo  : h