Partager via


Dépannage pour le test d'outils pour Visual Studio ALM

Lorsque vous testez votre code, certaines conditions peuvent générer des erreurs ou des avertissements, ou même entraîner l'échec du test. Cette rubrique décrit quelques-unes de ces conditions, ainsi que les étapes que vous pouvez suivre pour les résoudre.

Dépannage de l'exécution de tests

Les conditions qui peuvent empêcher des tests de s'exécuter correspondent généralement à un échec du déploiement du fichier test ou d'autres fichiers requis pour l'exécution du test.

  • Tests distants. Pour les tests distants, les problèmes de communication avec l'ordinateur distant peuvent également être en cause. Ces erreurs et d'autres au niveau du test et de son exécution sont décrites dans Dépannage de l'exécution de tests.

  • Tests unitaires ASP.NET. Si votre test unitaire ASP.NET s'exécute dans le processus IIS, vous pouvez choisir d'exécuter le processus ASP.NET sous forme d'utilisateur non défini par défaut, avec une identité de processus différente, pour des raisons de sécurité. Dans ce cas, l'exécution du test peut échouer.

  • Dépannage des problèmes liés aux tests Web. Différentes erreurs peuvent se produire lorsque vous exécutez des tests Web. Elles peuvent être provoquées par un attribut de liaison de données manquant, des problèmes avec les paramètres de sécurité ou une tentative d'accéder à un site Web à l'extérieur de votre pare-feu. Pour plus d'informations, consultez Dépannage des tests des performances de site Web.

  • Dépannage des problèmes liés aux tests. Différentes erreurs peuvent se produire lorsque vous exécutez des tests. Elles peuvent être dues à des problèmes liés à la base de données du test de charge, aux compteurs définis sur votre test de charge, à un agent de test et un contrôleur de test mal configurés ou à un des tests contenus dans le test de charge. Pour plus d'informations, consultez Dépannage des tests de charge.

Nouvelles signatures d'assemblys avec nom fort

Lorsque vous exécutez des tests unitaires, vous testez du code dans un fichier binaire. Vous pouvez rassembler les informations de couverture du code lorsque ces tests s'exécutent en instrumentant ce fichier binaire ; consultez Comment : obtenir des données de couverture du code. Le processus d'instrumentation ajoute du code qui génère des informations de couverture du code dans le fichier binaire.

Si le fichier binaire que vous testez est un assembly avec nom fort, la modification de code provoquée par l'instrumentation invalide sa signature. Visual Studio essaie automatiquement de signer à nouveau l'assembly immédiatement après l'étape d'instrumentation. Pour plus d'informations sur les assemblys avec nom fort, consultez Assemblys avec nom fort.

Différentes conditions peuvent entraîner l'échec de la nouvelle signature. Pour plus d'informations sur le contournement de ces conditions, consultez Instrumentation et nouvelle signature d'assemblys.

Données de couverture du code et VSPerfMon.exe

Si vous exécutez VSPerfMon.exe tout en exécutant des tests pour lesquels vous rassemblez des données de couverture du code rassemblement, les événements suivants se produiront :

  • Si vous exécutez VSPerfMon avec l'option TRACE ou SAMPLE, la série de tests qui s'exécute simultanément échoue et une erreur est rapportée sur la page Détails de la série de tests.

  • Si vous exécutez VSPerfMon.exe avec l'option COVERAGE, le processus VSPerfMon.exe est arrêté.

Dans les deux cas, la solution de contournement consiste à s'abstenir d'exécuter VSPerfMon.exe et simultanément d'exécuter des tests dans lesquels vous rassemblez des données de couverture du code. Pour plus d'informations sur l'outil VSPerfMon.exe, consultez VSPerfMon.

Quand cela peut-il arriver ?

Les cas les plus courants d'exécution de VSPerfMon sont les suivants :

  • Vous avez démarré une session de profilage, peut-être dans une instance de Visual Studio autre que l'instance dans laquelle vous effectuez des tests.

  • Vous rassemblez des données de couverture du code ou de profilage en exécutant VSPerfMon.exe directement ou, comme cela est plus fréquent, en utilisant le wrapper VSPerfCmd.exe.

Les données de couverture du code n'apparaissent pas correctement

Si vous avez demandé que les données de couverture du code soient rassemblées pour vos tests mais qu'elles n'apparaissent pas, ou qu'elles diffèrent de vos attentes, l'une des situations décrite ici peut s'appliquer :

  • Aucune donnée de couverture du code n'apparaît. Pendant l'exécution du test, certains fichiers binaires, tels que les DLL COM, sont chargés à partir de leur emplacement d'origine et non du répertoire de déploiement des tests. Ces fichiers binaires doivent être instrumentés en place ; sinon, bien que l'exécution du test réussisse et qu'aucun avertissement de niveau d'exécution ne soit généré, les données de couverture du code ne sont pas rassemblées. Pour plus d'informations, consultez Choix du dossier d'instrumentation.

  • La mise en surbrillance de la couverture du code n'apparaît pas. Lorsque vous exécutez des tests, rassemblez des données de couverture du code, puis consultez les résultats des tests, Visual Studio indique le code qui a été testé dans la série de tests en mettant en surbrillance le code dans son fichier de code source. Vous pouvez choisir les couleurs qui indiquent quel code a été couvert, non couvert et partiellement couvert. Si une partie ou toute cette mise en surbrillance n'apparaît pas, assurez-vous que les couleurs choisies diffèrent de la couleur d'arrière-plan de votre fichier de code source. Pour plus d'informations sur le choix de couleurs pour la mise en surbrillance, consultez la section « Modification de l'affichage des données de couverture du code » dans Comment : obtenir des données de couverture du code.

  • Les données de couverture du code n'ont pas été correctement fusionnées. Vous pouvez fusionner des résultats qui incluent une ou plusieurs séries de tests ASP.NET, mais la fenêtre Résultats de la couverture du code affiche des données ASP.NET sous Résultats fusionnés dans des nœuds distincts, et non dans un nœud unique fusionné.

  • Certaines données de couverture du code fusionnées ne sont pas affichées. Après avoir fusionné les données de couverture du code, vous pouvez les exporter sur disque sous forme de fichier XML. Si vous réimportez ce fichier, puis le fusionnez avec les données supplémentaires, certaines statistiques ne sont pas affichées.

  • Impossible d'importer les données de couverture du code. Visual Studio doit être en mesure de trouver certains fichiers sur le disque pour importer les données de couverture du code.

  • Les fichiers binaires instrumentés sont remplacés. Vous essayez de rassembler des données de couverture du code à partir d'un programme que vous exécutez pendant un test manuel. Si vous utilisez CTRL+F5 pour démarrer ce programme, l'action CTRL+F5 provoque la reconstruction du fichier binaire du programme. Cela remplace le fichier binaire instrumenté, ce qui signifie qu'aucune donnée de couverture du code ne peut être rassemblée.

Pour des informations générales sur la collecte de données de couverture du code, consultez Comment : obtenir des données de couverture du code.

Voir aussi

Tâches

Comment : fusionner des données de couverture du code

Dépannage des tests des performances de site Web

Dépannage des tests de charge

Concepts

Utilisation des données de couverture du code fusionnées