Bonjour,
J'ai installé Visual Studio 2008 Team System sur ma machine (Windows 7 64bits) dans le but d'utiliser l'outil de couverture de code inclus dans cette suite logiciel.
J'ai configuré mon projet en mode debug win32 pour créer une DLL à exécuter sous MATLAB (une mex 32bits d'extension mexw32). J'ai activé les informations de profiling dans les options d'édition de liens (cf. pièce jointe "config_VS.png") pour pouvoir instrumenter le code. La compilation se déroule correctement.
Je souhaite évaluer la couverture de code lorsque j'exécute ma mex sous matlab. Pour cela, comme expliqué sur un forum, voici comment je procède:
1. j'ouvre matlab
2. j'ouvre "visual studio 2008 command prompt" et j'instrumente ma DLL:
vsinstr.exe -coverage cheminVersMaDLL
3. toujours dans "visual studio 2008 command prompt", j'exécute la ligne suivante:
vsperfmon -coverage -output:[REPERTOIRE_VERS_MA_DLL]\result.coverage
4. Je lance mon script matlab exécutant ma mex.
5. Dans une nouvelle fenêtre "visual studio 2008 command prompt", je termine le process:
Tout semble se dérouler correctement, cependant lorsque j'ouvre sous VS le fichier "result.coverage", rien n'a été couvert (cf. pièce jointe "pb_0_couverture_de_code.png")... Qu'est ce que je ne fais pas correctement? Pourquoi n'ai je pas une couverture du code exécuté dans ma mex function?
Merci par avance pour l'aide que vous m'apporterez,
Cordialement,
Stéphane.
Partager