Partager via


Comment : déboguer tout en exécutant un test unitaire Smart Device

Mise à jour : novembre 2007

Le débogage automatique n'est pas pris en charge pour les tests unitaires Smart Device, car le code de test s'exécute sur un appareil ou un émulateur au lieu de s'exécuter sur un ordinateur de bureau. Sélectionner Démarrer le débogage dans le menu Déboguer, Déboguer la sélection dans la fenêtre Affichage de tests, ou Déboguer les tests activés dans l'Explorateur de tests ne fait que lancer un test et ne le débogue pas. Cette rubrique décrit la manière de déboguer en attachant manuellement le débogueur à un test unitaire Smart Device en cours.

Dans les procédures suivantes, vous allez créer un test unitaire Smart Device, préparer l'appareil pour le débogage, ajouter des points d'arrêt au test et déboguer le test.

Remarque :

Il est possible que votre ordinateur affiche des noms ou des emplacements différents pour certains des éléments d'interface utilisateur Visual Studio dans les instructions suivantes. L'édition de Visual Studio dont vous disposez et les paramètres que vous utilisez déterminent ces éléments. Pour plus d'informations, consultez Paramètres Visual Studio.

Pour déboguer tout en exécutant un test unitaire Smart Device

  1. Créez une application Smart Device que vous souhaitez tester ainsi que le test unitaire Smart Device.

    Pour plus d'informations, consultez Procédure pas à pas : création et exécution d'un test unitaire Smart Device.

  2. Pour activer le débogage managé sur l'appareil, utilisez l'outil Visual Studio Remote Registry Editor pour créer les éléments suivants dans le Registre de l'appareil :

    1. Une nouvelle clé sous HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETCompactFramework nommée Managed Debugger.

    2. Une nouvelle valeur DWORD sous HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETCompactFramework\Managed Debugger avec le nom AttachEnabled et la valeur 1.

  3. Définissez les points d'arrêt en ajoutant l'instruction System.Diagnostics.Debugger.Break() dans le test unitaire Smart Device.

    Remarque :

    Les points d'arrêt dans votre code seront atteints uniquement s'ils possèdent cette instruction System.Diagnostics.Debugger.Break().

  4. Démarrez votre test.

    Pour cela, dans la fenêtre Affichage de tests, cliquez avec le bouton droit sur le test que vous souhaitez exécuter, puis sélectionnez Exécuter la sélection.

  5. Attendez que l'hôte de test atteigne un des points d'arrêt que vous avez ajoutés à votre test unitaire. Lorsque cela se produit, votre appareil affichera le message "Une interruption utilisateur s'est produite dans SmartDeviceTestHost.exe.".

  6. Attachez le débogueur au processus hôte de test Smart Device :

    1. Dans le menu Déboguer, cliquez sur Attacher au processus.

    2. Remplacez le Transport par Smart Device.

    3. Modifiez le Qualificateur sur l'appareil qui exécute le test.

    4. Cliquez sur SmartDeviceTestHost.exe dans la liste Processus disponibles.

    5. Cliquez sur Attacher.

    Visual Studio s'attachera au processus, avec une pause de l'exécution à l'instruction System.Diagnostics.Debugger.Break(). Vous pouvez cliquer sur Continuer dans le menu Déboguer ou appuyer sur F5 pour permettre à l'exécution de se poursuivre jusqu'au prochain point d'arrêt.

    Remarque :

    Supprimez l'instruction System.Diagnostics.Debugger.Break() et la clé de Registre Managed Debugger lorsque vous avez terminé le débogage. Sinon, la boîte de dialogue du point d'arrêt apparaît chaque fois que vous exécutez le test.

Voir aussi

Tâches

Comment : créer des attachements à des processus smart device managés

Comment : créer un test unitaire Smart Device

Autres ressources

Utilisation des tests unitaires Smart Device