Dad 3.0

C'est un papa du futur avec son appareil photo

Étiquette : Tests

Organiser ses tests unitaires

Après avoir essayé de démystifier les tests dans le premier billet de cette série, je vous propose de commencer à organiser votre code de test. Oui, oui, il faut l’organiser un minimum.

Vous avez vu qu’un premier principe de l’organisation des tests est de séparer le code de test du code fonctionnel. Ça, ça va aller, c’est facile à mettre en œuvre. Mais organiser son code de test signifie aussi savoir quoi mettre dans un test. Pour cela, je vais commencer par vous présenter ce concept de test unitaire. Ensuite, il faudra avoir un aperçu des frameworks plus standard que pytest.

Lire la suite

Testez le comportement de votre code et non son implémentation

Mon premier billet sur les tests présente le concept et comment, avec peu d’effort, vous pouvez améliorer la validation que vous faites déjà. Mais le code présenté a des défauts et celui sur lequel je souhaite insister en premier relève de la question de quoi tester. En particulier pour le langage Python qui a une manière particulière de gérer la visibilité des attributs.

Notez que si l’exemple présenté ici repose sur une particularité du langage Python, le concept s’applique à tous les langages.

Lire la suite

De la validation aux tests

Une particularité du langage Python est qu’il ne se limite pas au monde des développeurs. Pour l’écrasante majorité de mes stagiaires, écrire un programme n’est pas leur activité principale mais doit les aider dans leur métier. Inutile de dire que tout ce qui a un rapport à la production de code doit aller à l’essentiel.

Du coup, il y a une partie qui provoque toujours la même réaction de lassitude : les tests. Cette réaction d’intérêt mitigé vient du fait qu’ils ne codent que des scripts à usage limité pour lesquels l’investissement à la compréhension de ce que sont les tests et la démarche ne semble pas nécessaire. C’est certainement le cas aussi pour tous ceux qui n’écrivent pas du code à usage professionnel.

Vous vous doutez bien que si j’écris ce billet, c’est que la vision du test n’est pas tout à fait exacte et résulte d’une incompréhension de l’objectif du test dit de développeur. Je vous invite donc à lire le billet suivant afin d’essayer de comprendre ce qu’est un test, car vous en faites déjà… ou presque.

Lire la suite

Doctest, la documentation qui test le code Python

Python est un langage très structuré. Il incite ainsi à la qualité du code par une rigueur rédactionnelle. Deux composantes principales de la qualité du code sont la documentation et les tests. Mais il s’agit aussi de deux aspects difficiles à imposer et à maintenir. Ceci fait que les approches dites Agile tendent à mettre en retrait la documentation par rapport à la production logicielle. Python propose une approche intéressante qui permet de documenter le code tout en s’assurant que cette documentation sera à jour. Suivez le guide.

Lire la suite

Java et qualité, la couverture du code par les tests.

Cet été, la version 2.2 de Sonar a été publiée. Sonar est réputé être un outil de suivi de la qualité des projets Java et se retrouve régulièrement en bout de chaîne d’une intégration continue. Il faut dire que c’est un excellent outil pour le suivi des développements, mais il met aussi en évidence cette limite de la notion de « qualité » au sein des développements informatique.

En effet, ces indicateurs sont souvent pris directement en tant que métriques traduisant la qualité du code. Le problème est qu’elles surfent souvent sur la vague des idées à la mode. Ainsi, un indicateur que j’ai eu l’occasion de voire comme le plus important est la couverture du code par les tests.

Lire la suite

Fièrement propulsé par WordPress & Thème par Anders Norén

En naviguant sur Dad 3.0, vous acceptez l’utilisation de cookies pour une navigation optimale et nous permettre de réaliser des statistiques de visites. Plus d'informations

Le blog Dad 3.0 utilise les cookies pour vous permettre une navigation optimale et nous permettre de réaliser des statistiques de visite. Dad 3.0 affichant des publicités, celles-si utilisent également des cookies pour un ciblage publicitaire. En continuant la navigation sur Dad 3.0, vous acceptez le dépôt et la lecture de cookies.

Fermer