Je viens juste de commencer les tests unitaires et je suis un peu confus et un peu débordé quand le sujet teste les modèles. J'ai actuellement des modèles ActiveRecord avec setters et getters. La plupart d'entre elles consistent simplement à encapsuler des données, seules certaines d'entre elles apportent quelque chose de nouveau, comme par exemple une méthode getFullName() qui retourne la concaténation des champs firstName et lastName.Qu'est-ce qui vaut la peine d'être testé dans un modèle/une entité ActiveRecord?
Alors, que dois-je tester? Dois-je tester chaque affectation de propriété ou dois-je tester uniquement les méthodes spéciales comme getFullName()? Dans quelle mesure devrais-je aller? Quand dois-je tester la classe elle-même et quand devrais-je réellement tester l'insertion de la base de données? Qu'en est-il de la validation déjà présente dans l'entité, devrais-je en tenir compte? Ce qui me dépasse est le nombre de tests dont il me semble avoir besoin pour une entité avec beaucoup de champs. Y a-t-il un moyen de contourner cela?
Des exemples seraient particulièrement appréciés!
Je commence un nouveau projet et je veux le démarrer correctement. J'utilise un ORM avec un outil qui génère les classes pour moi. Je pourrais avoir des accesseurs ou non. Je pensais juste qu'il est plus uniforme d'avoir des accesseurs pour chaque propriété au lieu de seulement quelques-uns. Dans certaines parties de l'application, je pourrais vouloir utiliser le prénom, dans d'autres, je pourrais vouloir utiliser le nom complet. 'getFullName' était un exemple de logique métier personnalisée. Je vais avoir d'autres méthodes qui feront des requêtes personnalisées et il est certainement logique pour moi de les tester.Je ne suis pas sûr de simples getters et setters. – fromvega
Je suis d'avis que si vous écrivez du code, cela devrait valoir la peine d'écrire un test. J'essayais aussi de souligner que vous n'avez pas nécessairement besoin d'accesseurs pour chaque propriété et que la création de toutes ces méthodes est un travail supplémentaire. Que vous vous inquiétez d'écrire des tests pour vous faire remarquer. – Schleis