Livre sur les tests avec JUnit

Samedi, le facteur m'a apporté un livre.

Lire la suite...

Exigences et tests, tests et exigences : un ruban de Möbius

Trouvé via le blog de Karl, un article publié dans le très sérieux magazine IEEE Software qui fait l'hypothèse d'une équivalence entre les tests et les exigences. L'article Tests and Requirements, Requirements and Tests: A Möbius strip, est signé de Grigori Melnik et de Robert C. Martin, le célèbre Uncle Bob.

La référence au ruban de Möbius illustre comment les 2 disciplines (exigences et tests) en deviennent une seule lorsque le formalisme augmente.

Dans l'article, les exemples sont en FIT qui propose une représentation tabulaire des tests exigences. FIT est bien adapté aux tests sur les données [1].

Je suis convaincu de cette hypothèse d'équivalence. L'écriture de tests d'acceptation est une technique de spécification, d'autant plus pertinente que les tests sont associés à des histoires d'utilisateur. Je l'applique maintenant sur tous les projets auxquels je participe, mais en utilisant le formalisme BDD plutôt que FIT. J'en ai déjà parlé ici et .

Notes

[1] je vois dans le dernier exemple que FIT permet aussi de spécifier des scénarios d'accès concurrents à une ressource, il va falloir que j'approfondisse l'utilisation du temps dans FIT

Tests d'acceptation orientés comportement

Voire même Behaviour Driven Development...

Lire la suite...

Chanson agile

Roy Osherove est un gars sérieux, qui a même écrit un livre sur les tests unitaires. C'est aussi un guitariste qui a poussé la chansonnette lors des TechEd à Barcelone, à la fin de sa présentation sur l'intégration continue. Ca s'appelle Every Build You Break et s'est inspiré de Sting et Police, quand même. Pour ceux qui regarderont la vidéo, et en particulier mes étudiants rétifs aux tests unitaires, profitez-en pour lire le premier chapitre de son livre, The basics of unit testing, disponible en téléchargement.

Peut-être cela va créer des vocations musicales pour les présentations du prochain SigmaT ?

GreenPepper, ça relève les développements

Des spécifications exécutables écrites par le métier !

Lire la suite...

Formaliser les critères d'acceptation

...ou comment rendre inutile la rédaction de spécifications détaillées.

Lire la suite...

Communiquer les tests d'acceptation aux développeurs

Quand et sous quelle forme le directeur de produit fournit les critères de tests d'une histoire d'utilisateur ?

Lire la suite...

Prévisions sur l'Agilité en 2007

Janvier c'est l'époque des voeux et des prévisions.

Lire la suite...

Correction des copies

J'ai posé quelques questions pour les partiels de décembre et maintenant me voilà avec une pile de copies à corriger...

Lire la suite...

Mes formations

Les formations que j'ai faites cette année, pour mes clients industriels ou pour mes étudiants :

Lire la suite...

Savoir finir une histoire

Un principe des méthodes agiles est qu'une "user story" doit être complètement finie en une itération. Pas si facile...

Lire la suite...

Test Driven Development

Le TDD est une technique qui est facile à comprendre mais moins facile à mettre en place. Je prépare un cours sur le sujet pour mes étudiants. En attendant, un article de vulgarisation : Test Driven Development, a Portable Methodology

Tests agiles

Dans le numéro de juin de Software Test & Performance :

  • un article (et la couverture) sur l'utilisation de Scrum pour les activités de test
  • et surtout une excellente présentation des différents tests dans un cadre agile par Dean Leffingwell "Take the Agile Path to true Balance". Il présente bien la problématique des tests dans un développement agile.

Il suggère notamment qu'une itération de "durcissement" est bien souvent nécessaire à la fin d'une release, après les itérations "normales". C'est une évidence pour les projets débutant dans l'agilité auxquels je participe : tant qu'on n'a pas complètement automatisé, tous les tests concernant une user story ne peuvent pas être passés dans l'itération où elle est réalisée. Cela nécessite déjà un gros changement dans les habitudes pour y commencer les tests fonctionnels.