Test

Software Craftsmanship

Un test peut en cacher un autre – Tests bout en bout et autres

Introduction L’article d’introduction débute en listant certaines différences de visions que je peux avoir avec d'autres développeurs concernant l'architecture applicative ou encore la rédaction des tests. À travers elles, j’évoque les difficultés qu’ils peuvent rencontrer à identifier précisément quoi tester et comment. Nous avons pu voir dans les autres articles de la série différents types de tests. Certains nous aidant à vérifier les règles métier comme les tests unitaires : Un test peut en cacher un autre - tests unitaires - partie 1 Un test…

Lire la suite
Software Craftsmanship

Un test peut en cacher un autre – Tests d’acceptation

Introduction L’article d’introduction débute en listant certaines différences de visions que je peux avoir avec d'autres développeurs concernant l'architecture applicative ou encore la rédaction des tests. À travers elles, j’évoque les difficultés qu’ils peuvent rencontrer à identifier précisément quoi tester et comment. Deux phrases extraites de l’article de Ian Cooper avaient retenu l’attention : “Le code issu d’un refactoring ne requiert pas de faire de nouveaux tests dessus !” “Je vous recommande d’utiliser ports/adaptateurs et d’écrire les tests en outside-in depuis le use case.” Nous…

Lire la suite
Software Craftsmanship

Un test peut en cacher un autre – Tests d’intégration – P1

Introduction L’article d’introduction débute en listant certaines différences de visions que je peux avoir avec d'autres développeurs concernant l'architecture applicative ou encore la rédaction des tests. À travers elles, j’évoque les difficultés qu’ils peuvent rencontrer à identifier précisément quoi tester et comment. Nous avons pu voir dans ces articles autour des tests unitaires :  Un test peut en cacher un autre — Tests unitaires — P1 Un test peut en cacher un autre — Tests unitaires — P2 Que ces tests sont exclusivement centrés sur…

Lire la suite
Bonne pratique

Property-based testing : Un contrat d’interface en béton

La compréhension de cet article est facilitée par des connaissances sur l'architecture hexagonale (Clean Archi) et le Domain-Driven Design. Lorsque vous développez un produit en vous basant sur les principes du Domain-Driven Design (DDD) et que vous vous efforcez de respecter les principes de Clean Archi, vous vous retrouvez alors probablement avec une catégorie particulière d'interfaces appelées Repository. Nous allons voir ici qu'une stratégie de test des implémentations se reposant uniquement sur les méthodes de l'interface peut s'avérer très utile pour itérer sur notre implémentation sans influencer notre code métier. Nous allons…

Lire la suite
Software Craftsmanship

Un test peut en cacher un autre – Tests d’intégration – P2

Introduction L’article d’introduction débute en listant certaines différences de visions que je peux avoir avec d'autres développeurs concernant l'architecture applicative ou encore la rédaction des tests. À travers elles, j’évoque les difficultés qu’ils peuvent rencontrer à identifier précisément quoi tester et comment. Nous avons pu voir dans ces articles autour des tests unitaires :  Un test peut en cacher un autre — Tests unitaires — P1 Un test peut en cacher un autre — Tests unitaires — P2 Que ces tests sont exclusivement centrés sur…

Lire la suite
Software Craftsmanship

Un test peut en cacher un autre – Tests unitaires – P2

Introduction L’article d’introduction débute en listant certaines différences de visions que je peux avoir avec d'autres développeurs concernant l'architecture applicative ou encore la rédaction des tests. À travers elles, j’évoque les difficultés qu’ils peuvent rencontrer à identifier précisément quoi tester et comment. Deux phrases extraites de l’article de Ian Cooper ont été mises en avant : “Le code issu d’un refactoring ne requiert pas de nouveaux tests” “Je vous recommande d’utiliser ports/adaptateurs et d’écrire les tests en outside-in depuis le use case” Ces deux axes…

Lire la suite
Archi & techno

Vue.js en TDD

Introduction :   On a tous entendu parler de Vue.js, le dernier framework JavaScript du moment. Certains l’ont déjà expérimenté. Mais au-delà du POC, il est temps de s’armer pour réaliser des grands projets Vue.js en production. Quoi de mieux pour cela que d’apprendre à utiliser Vue.js en TDD ? L’objectif de cet article est de partager les bases pour partir en TDD sur Vue.js. Afin d’y parvenir, on réalise un composant très simple, basé sur le template initialement généré par le Vue CLI, sur…

Lire la suite
Archi & techno

Nous étions à la KubeCon Europe (2/2)

Kubernetes et son écosystème pour la production La KubeCon n’était pas que l’occasion de présenter la roadmap et les nouvelles fonctionalités de Kubernetes. C’était aussi l’occasion de faire le point sur son écosystème grandissant et sur son utilisation en production. Pour être serein en production, nous nous attendons à ce qu’un framework comme Kubernetes propose : Une installation automatisée et idempotente Du cloisonnement d’environnement (Multitenant) De la persistence sur les données Du monitoring De la haute disponibilité Du Continuous Intégration et du Continuous Delivery Des…

Lire la suite
Archi & techno

Sortie de la carte de référence OCTO : tout sur les tests d’applications Web Front-end

Vous souhaitez mettre en place des tests sur votre application Web front-end mais vous ne savez par où commencer? Face à la complexité grandissante des applications Web, les enjeux de qualité sont de plus en plus importants, il est nécessaire d’assurer la fiabilité et la maintenabilité de vos applications en mettant en place des tests. Notre carte de référence a pour but de vous aider à mieux appréhender les différents types de tests existants et de vous donner une vision globale de l’état de l’art.…

Lire la suite
Méthode

Sortir de la non qualité

Il y a quelques mois de cela, Michel vous parlait de la culture du Software Craftsmanship. Il évoquait notamment dans son article les différents enjeux à adresser pour diffuser cette culture dans l’entreprise. J’aimerais prolonger son discours en vous proposant de revenir sur l’origine de cet océan de code “legacy” dans lequel beaucoup d’entres nous naviguent douloureusement chaque jour. Mais surtout, j’aimerais vous proposer des moyens de s’en sortir.

Lire la suite