17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Programmation</strong> dirigée par les tests<br />

CHAPITRE 12<br />

dire systématique, que le temps prévu au débogage soit bien en-dessous de la réalité<br />

dans la planification d’un projet.<br />

Les développeurs sceptiques deviennent en général adeptes le jour où ils sont chargés<br />

d’introduire ou modifier une fonctionnalité de bas niveau dans un gros logiciel en<br />

production : les tests deviennent dans ce cas pour le développeur ce que le filet de<br />

sécurité est au trapéziste.<br />

Les chefs de projet qui émettent des réserves le font car il est très difficile de quantifier<br />

les gains de temps obtenus par ce genre d’approche : ils dépendent fortement de la personnalité<br />

de chaque composante de l’équipe, du type de projet, et des situations.<br />

Principes<br />

Les eXtrémistes (adeptes de l’eXtreme Programming) préconisent d’écrire les tests<br />

avant le code, pour former une sorte de mini-cahier des charges pour le développement.<br />

Le code peut ensuite être bâti pour faire fonctionner chacun des tests. S’ensuit<br />

un cycle itératif pour faire grossir tour après tour tests et code.<br />

Cette approche est la plus pure mais dans la réalité les développeurs alternent en général<br />

l’ordre de conception (code puis test ou test puis code) en fonction des situations.<br />

L’essentiel reste d’alterner chacun des deux exercices : le plus dur en général pour un<br />

développeur est de réussir à s’arrêter de coder pour passer côté tests.<br />

On peut séparer les tests en deux catégories complémentaires :<br />

les tests unitaires ;<br />

les tests fonctionnels.<br />

Tests unitaires<br />

EN SAVOIR PLUS La gestion de projet, eXtreme Programming<br />

La lecture de Gestion de projet – eXtreme Programming, par Bénard, Bossavit, Médina et Williams chez<br />

le même éditeur, donnera plus d’informations sur ce sujet au lecteur intéressé.<br />

Les tests unitaires testent de manière isolée les fonctionnalités d’un module ou package,<br />

sans se soucier du reste du logiciel, pour vérifier qu’ils répondent bien aux cas<br />

d’utilisation (use cases).<br />

389

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!