J'ai un projet avec des classes et des méthodes que je veux tester. J'ai un autre projet avec les méthodes de test qui vont tester les méthodes de mon projet principal.Lorsque j'exécute les tests de couverture, j'obtiens la couverture du code des méthodes de tests, pas la couverture des méthodes que je veux tester
J'exécuter les tests avec opencover et je produis les rapports avec reportgenerator, avec ce que j'ai commandes dans un fichier .bet:
..\tools\OpenCover.Console.exe -register:user -target:"C:\myDllWithTests.dll" -output:"c:\coverage\opencovertests.xml"
.\ReportGenerator.exe "-reports:c:\coverage\opencovertests.xml" "-targetdir:c:\coverage\opencovertests.xml\reports"
J'utilise MSTest pour les tests.
Le problème est que dans le rapport html, je vois que le code qui est couvert est les méthodes de tests, pas les méthodes dans mon projet principal de test.
Comment puis-je ajouter les méthodes principales dans le résultat?
Merci.
J'ai essayé d'ajouter les targetargs, mais le résultat est le même. A propos de l'article, je le savais, mais il n'a pas offert le code source, et j'ai le doute si les tests sont dans la même DLL que le code principal ou est une autre DLL. Dans mon cas, le problème est que je n'ai que la couverture de l'ensemble de test et non de l'assemblage principal. –
J'ai essayé avec ce filtre: -filter: "+ [\ *] \ * - [\ * Tests] \ *" -mergebyhash mais il n'inclut pas le fichier main.dll qui se trouve dans le même dossier que le test. dll. Aussi, j'ai essayé avec le nom complet de la DLL principale et encore ça ne fonctionne pas. –
Peut être le problème n'est pas avec OpenCover, mais avec les tests lui-même. Quelle est la sortie de MSTest? Voyez-vous des statistiques sur les tests exécutés, par ex. "1/1 test (s) réussi (s)"? – CodeFuller