Je suis en train de développer un plugin Maven, et je me rends compte que je ne suis pas sûr d'écrire des tests unitaires car je ne sais pas comment utiliser la fonctionnalité du plugin sauf en exécutant simplement Maven. Comment les autres développeurs de plugins Maven ont-ils géré les tests de leur code?Quels sont les bons modèles ou les appareils de support pour écrire des tests unitaires pour les plugins Maven?
Répondre
Vous devriez essayer de séparer autant que possible la fonctionnalité de base pour utiliser des interfaces personnalisables plutôt que l'API Maven directement. De cette façon, vous pouvez tester cette fonctionnalité séparément de l'environnement.
E.g. Si vous lisez des données d'un fichier pendant l'exécution, vous devez injecter un Reader
dans votre classe plutôt que de lui ouvrir le fichier lui-même. Ensuite, une classe distincte peut initialiser le flux d'entrée dans la vie réelle, mais dans les tests unitaires, vous pouvez fournir un StringReader
préchargé avec la chaîne désirée.
Bien sûr, vous avez également besoin de tests d'intégration - ceux-ci peuvent être exécutés plus simplement en appelant execute()
sur votre classe Mojo.
Vous avez également besoin de tests d'acceptation (ou de bout en bout). Le maven-invoker-plugin aidera beaucoup dans ce genre de tests.
- 1. tests unitaires maven plugins
- 2. Écrire des tests pour les plugins Rails
- 3. Quels sont les bons modèles de conception pour CRUD?
- 4. Quels sont les bons frameworks d'automatisation des tests?
- 5. Quels sont les attributs "mauvais" dans les tests unitaires?
- 6. Quels sont les plugins recommandés pour Trac?
- 7. Quels types de tests unitaires sont les plus rentables?
- 8. Chargement des appareils pour les tests django
- 9. Quels sont les bons serveurs d'applications pour les piles LAMP?
- 10. Quels sont les outils disponibles pour documenter les plugins jQuery?
- 11. Quels sont les frameworks de tests unitaires disponibles dans java?
- 12. Quels sont les modèles pour les schémas de table DB?
- 13. Spring + Maven: fichiers de propriétés séparés pour les tests unitaires et les tests d'intégration
- 14. Modification des constantes pour les tests unitaires
- 15. Quels sont les bons guides pour la programmation d'écran tactile?
- 16. Tests unitaires et appareils
- 17. Quels sont les bons tutoriels Wireshark?
- 18. Quels sont les bons points de départ pour en apprendre davantage sur les squelettes algorithmiques?
- 19. Quels sont les bons moyens d'écrire une application PHP avec support de modules?
- 20. Quels sont les bons forums ou listes de diffusion pour les nouveaux programmeurs de Smalltalk?
- 21. Quels sont les bons addins d'utilisabilité pour Visual Studio 2008?
- 22. Quels sont les bons diagrammes de carte?
- 23. Quels sont les bons plugins et extensions vim pour le codage java?
- 24. Quels sont les avantages de faire des tests unitaires par rapport à des «assertions» simples?
- 25. SpecFlow/BDD pour les tests unitaires?
- 26. Makefile pour les tests unitaires en C++
- 27. Quels sont les bundles ou plugins TextMate les plus utiles pour le développement Rails?
- 28. quels sont les appareils seront listés
- 29. Quels sont les modèles de conception pour HTML et CSS?
- 30. Procédures stockées pour les tests unitaires
Merci Péter. Mon plugin a un grand nombre de paramètres, donc l'injection de paramètres est une chose que je veux avoir couverte par les tests unitaires. De même, changer les répertoires source et de sortie (mon plugin se rattache à la phase generate-sources) est quelque chose qui devrait être testé. Ce sont les sortes de choses dont je ne suis pas sûr. Tout à fait d'accord que les fonctionnalités de base devraient être extraites de l'API Maven si possible et testé séparément. –