J'ai créé un Mojo maven2 qui inspecte certains types de fichiers pour les instances de certaines chaînes. Il est conçu pour être utilisé dans la phase de test pour indiquer si ces fichiers sont valides ou non. Lorsqu'il trouve ces chaînes non désirées, il génère des alertes d'échec de génération et échoue la génération maven en utilisant MojoFailureException.Comment tester unitairement un plugin maven2 mojo qui valide les fichiers
Je voudrais faire des tests d'intégration avec ce Mojo chaque fois que je le compile/l'installe. Idéalement, j'imagine un scénario où j'ai plusieurs fichiers avec les chaînes qui devraient échouer la construction, puis tester la sortie maven2 pour affirmer que ces fichiers échouent. Quelle est la meilleure façon de faire ce genre de test dans un mojo maven2?
Merci
C'est un bon point. Les méthodes sont déjà écrites séparément, donc je devrais être capable de mocker certaines chaînes dans JUnit pour les envoyer dans chacune d'entre elles et tester la réponse. Mais comment ferais-je les tests d'intégration avec les fichiers pour vérifier qu'il fonctionnait de bout en bout? –
ASTUCE: sépare le vrai travail à faire du Mojo. Utilisez le Maven-2 Mojo uniquement pour extraire la configuration requise via une configuration de plug-in Maven-2. Créer une seconde classe, qui fait le vrai travail, lui donner une ou plusieurs méthodes d'exécution (...) avec le (s) argument (s) requis (utiliser DbC pour la validation des arguments). Appelez ensuite depuis Mojo execute(), cette deuxième classe, sa (ou ses) méthode (s) d'exécution. De cette façon, tester la mise en œuvre devient très facile. Un avantage supplémentaire est que l'implémentation peut être facilement utilisée à partir de différents scénarios (application peu util, ant-extension, eclipse-plugin, etc) – Verhagen
Comment obtiendriez-vous l'instance de MaveProject? – EliuX