20-08-2012, 02:06 PM
(20-08-2012, 08:38 AM)Sephi-Chan a écrit : Oui, il faut le faire.
Un bon moyen pour ça est d'encapsuler toute la logique d'une interaction dans une classe dédiée à ça, puis d'isoler les différents cas et d'écrire un test automatisé pour ça.
Par exemple, pour Conquest on Rails, j'ai isolé l'action d'attaque d'un joueur sur un territoire dans la classeCharacterAttacksTerritory
. J'ai d'abord écrit des tests unitaires pour décrire son comportement, puis au fur et à mesure, j'ai écrit l'implémentation (dès qu'un test passait, je l'affinais ou j'en écrivais un autre, qui me poussait à changer l'implémentation que je venais d'écrire). Comme tu peux le voir, les premiers tests servent à vérifier les cas limites (et l'implémentation est là).
Quand tu disais l'autre fois que tu ne programmais plus de la même façon et que tu voulais faire un "reboot" de ton jeu, c'est parce que maintenant tu développes par les tests d'abord ?