Retour d’expérience : le TDD après un an d’utilisation au quotidien

Introduction Dans cet article, je vais vous livrer un avis très personnel sur ce que m’a apporté le TDD et les difficultés que j’ai pu rencontrer. Si vous ne savez pas ce qu’est le Test Driven Development, je vous conseille cette vidéo qui est très bien faite : https://www.youtube.com/watch?v=wMY5FE59rkI Comment j’en suis venu au TDD ? J’ai eu beaucoup de […]

Utiliser une base H2 avec SpringBoot

Introduction H2 est une base de données rapide et légère qui peut être persistée (dans un fichier) ou non. Je la trouve utile pour au moins 2 cas d’utilisation : – Lorsque je veux réaliser un PoC, ça me permet d’avoir une base de données configurée en 2 minutes. – Lorsque je veux faire des tests d’intégration qui communiquent avec […]

ASP .NET MVC – Html.BeginForm : L’attribut HTML « action » n’est pas généré pour l’élément « form »

ASP .NET Généré un formulaire avec le moteur de templating Razor pour qu’il ait bien le bon champ « action » et non un champ « action » vide

Le mutation testing par l’exemple

Introduction Dans cet article, on va voir avec un cas concret ce qu’est le mutation testing et comment ça peut vous être utile au quotidien 😀. Sans plus tarder, prenons l’exemple suivant: On demande à Bob de créer un programme pour déterminer si un animal est mignon avec les règles suivantes: Par défaut un animal n’est pas mignon ❌ Si […]

Permettre à PhpStorm de reconnaître les annotations Symfony

En basculant sur PhpStorm, j’ai été surpris de constater que les annotations n’étaient pas nativement prises en charge par l’IDE. En effet, PhpStorm ne va pas vous proposer d’ajouter automatiquement les imports nécessaires à vos annotations et va les considérer comme « inutiles ». Cela signifie que même si vous rajoutez les imports manuellement, ils seront supprimés automatiquement au moment de l’optimisation […]

Vulnérabilité Log4Shell

Qu’est-ce que Log4j et JNDI ? Log4j est un utilitaire de gestion des logs pour les applications développées en Java. Ce framework open-source est développé par l’Apache Software Foundation depuis 2001. Il permet de configurer précisément les fichiers de sortie, les niveaux et le format des logs.  JNDI (Java Naming and Directory Interface) est une API Java qui permet d’effectuer des […]

Installation de Xdebug avec PhpStorm

Xdebug est une extension indispensable qui va vous permettre de « débugger » votre code PHP. J’ai installé ce débugger sur de nombreux projets PHP, si vous suivez ce guide pas-à-pas vous pourrez installer Xdebug sans aucun problème !  I. Récupérer la bibliothèque Xdebug La première étape consiste à télécharger la bibliothèque adéquate.  Si vous êtes sous Windows, il s’agit […]

Qu’est ce que le Hoisting en javascript?

Introduction Le « hoisting », qu’on peut traduire par « hissage » en français est un concept important en Javascript. En effet, il permet de mieux comprendre comment le code est exécuté et d’éviter pas mal d’erreurs au quotidien. On va voir ensemble de façon très concrète ce qu’est le hoisting. On utilisera des exemples que vous pourrez run directement dans la page donc […]

Les différences entre les doublures de test: Dummy vs Fake vs Stub vs Mock

Introduction Lorsqu’on réalise nos tests unitaires, le SUT (system under test) interagit avec différents objets dont le comportement n’est pas à tester.  On peut prendre l’exemple d’une méthode qui aurait pour but d’effectuer des calculs puis envoyer un mail via un service d’envoi: il n’y a pas de valeur ajoutée à initialiser ce service, on voudrait simplement vérifier que la […]

Squasher ses commits Git

Pour ne pas retrouver ses commits de travail dans votre branche de production, il est essentiel de squasher ces commits avant de fusionner votre branche (cf l’image d’illustration! 😉 ). Si vous ne savez pas ce que ce terme signifie ou comment l’appliquer, cet article est fait pour vous! On verra dans un premier temps ce que “squasher des commits” […]