Création dynamiques des méthodes en Java

Signaler
Messages postés
2
Date d'inscription
vendredi 19 mars 2010
Statut
Membre
Dernière intervention
31 mars 2010
-
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
-
Bonjour,
voila je fais des tests unitaires avec JUnit sous eclipse. Je voulais faire le même test (même assertion et alors même méthode de test) sur un ensemble de fichiers, et comme JUnit ne permet pas ce type de test itératif dans la même méthode, j'étais alors obligé d'écrire la même méthode autant de fois que le nombre de fichiers à tester, ce qui est pas de tout optimal.

Existerait-il pas une solution pour générer dynamiquement cette méthode plutôt de la réécrire à chaque fois?

Merci pour votre aide...

3 réponses

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
126
Salut,

Tu peux faire un modèle de code dans lequel tu définit les variables à modifier, et il te génère très rapidement le bout de code que tu veux par un raccourci clavier (c'est extrêmement utile pour la programmation de GUI !).

Tu peux également utilisé un outil style TopCased (combiné avec acceleo) pour générer du code (des fonctions, des classes, des tests unitaires, etc.) à partir d'un modèle UML. Je l'utilise sur un projet où je génère toutes mes classes JAVA : environ 100 000 lignes de codes générées... une fois le générateur au point, il est extrêmement simple de modifier le modèle UML et le répercuté sur tout le code d'une application.
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement
Messages postés
2
Date d'inscription
vendredi 19 mars 2010
Statut
Membre
Dernière intervention
31 mars 2010

Merci pour ta réponse, mais c'était pas littéralement un problème de génération de code. Entre temps je l'ai trouvé, il s'agit de l'introspection, c.à.d créer dynamiquement des classes en utilisant java.lang.Class. Dans mon cas, la méthode getMethod(String name,Class... parameterTypes) aurait un grand intérêt !! enfin j'espère.

J'ai pas encore essayé, ça devrait marcher ce qui m'évitera d'écrire la même méthode pour chacun des fichiers à tester.
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
126
Salut,

L'introspection permet de faire beaucoup de chose. Je ne vois pas trop ce que tu cherches à faire avec, mais je te souhaite bon courage ;)
______________________________________

AVANT de poster votre message, veuillez lire, comprendre, et appliquer notre réglement