Bonjour à tous !
J'aimerais l'avis du plus grand nombre concernant un problème auquel je dois faire face et qui est un problème d'organisation d'artifacts.
Je possède plusieurs projet qui se basent sur un framework (qu'on nommera Fwk) qui est décliné sous plusieurs version (Fwk-1.0, Fwk-1.1, Fwk-2.0 etc...)
Chaque projet peut utiliser une version du framework qui n'est pas forcément la dernière (on aura Projet1 qui va utiliser Fwk-1.0, Projet2 qui va utiliser Fwk-1.1 ...)
Pour tout ceci, je compte mettre en place un framework de tests unitaires qui va avoir un gros tronc commun, et éventuellement quelques spécificités en fonction de la version du Fwk qu'on souhaite tester.
Typiquement, je vais vouloir avoir un artifact que je vais nommer :
- FwkTest-1.0-Fwk1.0 (dont on va dépendre lorsqu'on utilise la v1.0 de Fwk)
- FwkTest-1.0-Fwk1.1 (dont on va dépendre lorsqu'on utilise la v1.1 de Fwk)
- FwkTest-1.0-Fwk2.0 (dont on va dépendre lorsqu'on utilise la v2.0 de Fwk)
- etc...
Que me conseillez-vous comme organisation pour mettre en place cela ?
J'ai déjà une idée (qui est peut-être mauvaise) :
Faire un artifact "parent" qui va contenir le tronc commun de mes classes de tests, avec ensuite un module/artifact par déclinaison de framework, ayant comme parent celui décrit précédemment.
Problème : je ne vais pas vouloir "compiler" les sources du tronc commun (car je ne pourrai pas, j'ai besoin de la dépendance vers Fwk pour pouvoir le faire ... chose que j'aurai seulement au niveau des artifacts "fils").
En revanche, je veux pouvoir compiler/packager les sources du tronc commun dans chacun des mes artifacts enfants.
Voyez-vous une solution "propre" (si possible sans avoir a dupliquer de code ...) pour répondre à ce besoin ?
Marchi d'avance![]()
Partager