Tests automatisés

Archi & techno

Le front, au delà du coloriage : émergence des composants applicatifs

Notre utilisation du Web change. Initialement conçus pour consulter des documents, les navigateurs sont devenus de puissants moteurs de rendu capables d'exécuter des applications complexes permettant la création de documents riches tels que Google Doc, ou la consommation de média en streaming via Netflix ou Spotify. Les documents se sont peu à peu transformés en applications. Là où quelques scripts suffisaient pour ajouter de simples animations ou effets graphiques, nos applications sont devenues de véritables clients riches et les bases de code se sont rapidement…

Lire la suite
Software Craftsmanship

Architecture Hexagonale : trois principes et un exemple d’implémentation

Documentée en 2005 dans son blog par Alistair Cockburn, l’Architecture Hexagonale est une architecture logicielle qui a beaucoup d’avantages et connaît depuis 2015 un regain d’intérêt. L’intention originale de l’Architecture Hexagonale est : Allow an application to equally be driven by users, programs, automated test or batch scripts, and to be developed and tested in isolation from its eventual run-time devices and databases. Soit en français : Permettre à une application d’être pilotée aussi bien par des utilisateurs que par des programmes, des tests automatisés…

Lire la suite
Archi & techno

Tests unitaires en Vue.js avec vue-test-utils et Jest

Cet article décrit des cas de tests unitaires, des plus communs à certains plus complexes, sur une application web en Vue.js. Vous pouvez lire l'article Vue.js en TDD au préalable, qui se concentre d'avantage sur la méthodologie de test (Test Driven Development). Cet article-ci décrit un panel de cas de tests plus large, en utilisant l'utilitaire officiel vue-test-utils et le framework de test Jest.  1/ Jest Jest est un framework de test développé et utilisé par Facebook pour tester unitairement du code JavaScript. Son principal objectif…

Lire la suite
Archi & techno

« pet vs. cattle », de l’artisan du serveur à l’artisan codeur

L’évolution du métier d’Ops suit un cheminement que nous observons régulièrement dans nos interventions. C’est au travers de cette fable, que nous allons voir les 4 étapes qui jalonnent ce chemin pavé d’embûches. Voyons pour cela comment un Ops procède concrètement pour effectuer l’opération « fix_mysql » qui consiste à changer une configuration de MySQL sur des serveurs de production.

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
Archi & techno

La technique au service du Lean Startup

À ChooseYourBoss, un site d'emploi informatique, on fait du Lean Startup. Plus précisément, on applique la méthode du Build-Measure-Learn (Construire - Mesurer - Apprendre). Tous les jours on construit notre produit, on l'améliore. Mais une partie importante de celui-ci est un logiciel que l'on développe. Bien évidemment tout ce que l'on développe est au service du produit ou de nos clients. Notre but étant d'apprendre le plus possible et surtout le plus vite possible, nous avons mis en place un certain nombre de pratiques qui nous aident. Ce sont des pratiques…

Lire la suite
Archi & techno

Kinect, I mock you so much

Derrière cette formulation humoristique se cache un des fondements de l’industrialisation des développements : le fait de pouvoir tester de manière automatisée tout ou partie d’un système informatique. Aussi bien dans les architectures complexes que dans les applications les plus simples, il est pertinent de pouvoir tester un composant logiciel unitairement (indépendamment des autres composants duquel il dépend) : les dépendances sont donc "mockées" ou simulées en français. Il est aussi nécessaire de pouvoir créer un contexte favorable au scénario de test en injectant un…

Lire la suite
Archi & techno

Tests par propriétés

Vous êtes déjà un expert TDD, votre application a une couverture de tests de plus 80%. Mais vous avez le sentiment que tout n'est pas testé, qu'il reste d'obscurs cas que vous n'arrivez pas exprimer. Pourquoi ne pas demander à un programme de vous aider à tester ? Vous pouvez déjà passer par le mutation testing. Cette méthode donne une première approche, mais il en existe une autre : les tests par propriétés. Cette méthode se résume à exprimer des propriétés et de laisser un programme la…

Lire la suite
Archi & techno

J’ai l’impression d’écrire mes tests en double !

En présentant les tests fonctionnels automatisés chez un client la semaine dernière, plusieurs questions ont été soulevées. La principale était celle-ci: - Pourquoi écrire ces tests FitNesse/GreenPepper alors que j'ai déjà des tests unitaires JUnit qui couvrent la même fonctionnalité ? La question est justifiée. Voici quelques éléments de réponse, tirés de nos échanges sur les mailing-lists OCTO...

Lire la suite