Pour divers projets de bibliothèque C++ dans VS2008, j'ai un projet frère appelé <libraryname>-Test
. C'est un projet exécutable qui dépend de la bibliothèque et exécute des tests dessus. La configuration post-construction du projet d'essai consiste simplement:Comment forcer l'exécution des événements post-build VS2008 C++?
"$ (TargetPath)"
Visual Studio ne sera pas ré-exécuter l'étape de post-construction à moins qu'il ne fait quelque chose pendant la construction, un re-lien au moins. Normalement, c'est une bonne chose, mais dans ce cas, je veux que les tests soient réexécutés chaque fois que la construction de la solution est déclenchée (par opposition aux builds du projet qui ne construisent que les projets dépendants nécessaires pour le vrai programme). Jusqu'ici, le seul moyen que j'ai trouvé pour que les tests soient exécutés à chaque fois est de supprimer l'un des fichiers intermédiaires dans le cadre du processus de post-construction. Cela fonctionne, mais ralentit les choses, car les projets de test doivent ensuite être reconstruits même si rien n'a changé.
Je ne veux pas relancer les tests sur * chaque * construction du programme, je veux juste pouvoir les exécuter à la demande. Idéalement, en construisant une solution, car c'est ce que la machine de construction CI fait régulièrement. C'est pourquoi j'ai spécifiquement différencié les builds de projets des builds de solutions dans la question. –
Ensuite, définissez l'événement post build sur les versions de version de votre projet uniquement. Utilisez les versions de version pour vos projets finaux qui sont expédiés/doivent être testés. Développez ensuite en utilisant la version de débogage. –