UPDATE : ajout de la présentation.

Les tests unitaires ont été à l’honneur ces dernières années. Pour preuve JUnit est intégré directement dans maven et dans les IDE (pas encore dans le JDK, mais qu’attend Sun ?). Encore mieux l’interpréteur ruby embarque le gem test/unit. Le Test Driven Development d’XP place même les tests unitaires comme pièce centrale du cycle de développement.

Cet engouement n’a pas été aussi significatif pour les tests fonctionnels, autre principe de base de l’eXtreme Programming (“acceptance tests”). Et pourtant ce n’est pas le besoin qui manque. Ils permettent entre autres de valider le bon développement d’une fonctionnalité et la non régression d’une nouvelle release. Ils peuvent aussi pour certains servir de calcul de la vélocité d’un projet. Ron Jeffries les considèrent même comme l’ultime métrique d’un projet agile (Running Tested Features).

Dans le domaine des applications web Java, des outils comme HttpUnit ou Cactus sont assez limités et lourds à utiliser. Mais une nouvelle génération d’outils a fait son apparition. Plus simples et plus fonctionnels, FIT, FITnesse, Watir, Sahi et Selenium sont les outils de tests fonctionnels à suivre de près dans un avenir proche. C’est ce dernier qui m’a bluffé récemment. Entièrement écrit en Javascript et HTML, il s’exécute directement dans les navigateurs. Il permet de tester simplement n’importe quelle application web (HTML/XML sur HTTP mais pas Flash).

Pour ceux qui désirent en savoir un peu plus, selenium fera l’objet d’un mardi gras le 16 janvier. Merci de me tenir informé de votre venue par mail à simon.brandhof AT hortis.ch (le message “+1″ me suffit).