Partager via


Utilisation des tests de base de l’appareil pour reproduire Gestionnaire de périphériques codes de problème

Les tests Principes de base de l’appareil (DevFund) utilisent des plug-ins d’E/S fournis par Microsoft pour exercer les appareils en envoyant des E/S spécifiques à la classe d’appareil tout en désactivant et en activant l’appareil, en faisant passer le système à travers les états d’alimentation et les redémarrages, en désaffectant et réaffectant des ressources, et d’autres tâches.

Étape 1 : Déterminer quels tests peuvent potentiellement reproduire le code d’erreur de l’appareil

Le tableau suivant met en correspondance les codes de problème d’appareil pour les tests connus pour exercer un appareil de manière à induire le code de problème correspondant. Ce graphique peut être utilisé par les testeurs d’appareils et de pilotes pour tenter de reproduire des problèmes d’appareil observés dans la nature, ou des problèmes qui peuvent être difficiles à reproduire lors des tests réguliers.

Code d’erreur de l’appareil Message d’erreur de l’appareil Test de base de l’appareil
10 CM_PROB_FAILED_START DF - PNP Rééquilibrer le redémarrage d’échec du test d’appareil (fiabilité)
DF - PNP Surprise Remove Device Test (développement et intégration)
DF - PNP Surprise Remove Device Test (fiabilité)
DF - PNP DIF Remove Device Test (fiabilité)
DF - Redémarrage avec des E/S avant et après (fiabilité)
DF - PNP Cancel Remove Device Test (fiabilité)
DF - PNP Disable and Enable Device Test (fiabilité)
DF - PNP Rééquilibrer la demande de nouvelles ressources Test d’appareil (développement et intégration)
DF - PNP Rééquilibrer la demande de nouvelles ressources Test d’appareil (fiabilité)
DF - PNP Remove Device Test (fiabilité)
DF - PNP Stop (Rééquilibrer) Test d’appareil (développement et intégration)
DF - PNP Stop (Rééquilibrer) Test d’appareil (fiabilité)
DF - Veillez avec des E/S pendant (fiabilité)
DF - Test de suppression surprise du port racine PCI (périphériques PCI uniquement) (fiabilité)
14 CM_PROB_NEED_RESTART DF - PNP Remove Device Test (fiabilité)
DF - PNP DIF Remove Device Test (fiabilité)
28 CM_PROB_FAILED_INSTALL DF - PNP DIF Remove Device Test (fiabilité)
31 CM_PROB_FAILED_ADD DF - PNP DIF Remove Device Test (fiabilité)
DF - PNP Disable and Enable Device Test (fiabilité)
DF - PNP Rééquilibrer le redémarrage d’échec du test d’appareil (fiabilité)
DF - PNP Remove Device Test (fiabilité)
38 CM_PROB_DRIVER_FAILED_PRIOR_UNLOAD DF - PNP DIF Remove Device Test (fiabilité)
39 CM_PROB_DRIVER_FAILED_LOAD DF - PNP DIF Remove Device Test (fiabilité)
43 CM_PROB_FAILED_POST_START DF - PNP Cancel Stop Device Test (fiabilité)
DF - PNP Cancel Remove Device Test (fiabilité)
DF - PNP Rééquilibrer le redémarrage d’échec du test d’appareil (fiabilité)
DF - PNP Rééquilibrer la demande de nouvelles ressources Test d’appareil (fiabilité)
DF - PNP Remove Device Test (fiabilité)
DF - Veillez avec des E/S pendant (fiabilité)
52 CM_PROB_UNSIGNED_DRIVER DF - PNP Disable and Enable Device Test (fiabilité)

Pour obtenir la liste des codes d’erreur de l’appareil, consultez messages d’erreur Gestionnaire de périphériques.

Consultez Tests Device.DevFund pour obtenir la liste complète des tests De base des appareils.

Étape 2 : Déterminer comment configurer la machine de test et de test

Après avoir déterminé le test à exécuter, décidez comment configurer le test et la machine de test pour reproduire l’erreur. Pour voir quels paramètres sont pris en charge par chaque test, cliquez sur le lien d’un test spécifique dans le tableau ci-dessus. Cela décrit le test et les options disponibles pour ce test. Par exemple, certaines erreurs PnP d’appareil sont sporadiques. Le commutateur /testcycles peut être utilisé avec tous les tests pour spécifier le nombre de fois où le test doit s’exécuter :

/p:testcycles=10

L’exécution du test avec plus d’itérations peut augmenter la probabilité d’induire l’erreur de l’appareil.

Certains tests entraînent la génération des journaux SetupAPI (par exemple , DF - Réinstaller avec des E/S avant et après (fiabilité) .  La machine de test peut être configurée pour générer des journaux SetupAPI détaillés.

Étape 3 : Exécuter le test

Ces tests peuvent facilement être exécutés sur la ligne de commande ou le HLK après avoir configuré un contrôleur HLK.

L’exécution de tests sur la ligne de commande via te.exe permet d’avoir plus d’options de test que d’exécuter les tests via le HLK. Par exemple, le paramètre de ligne de commande /breakonerror provoque l’arrêt de TAEF dans le débogueur lorsqu’une erreur se produit dans le test. Il existe de nombreuses autres options de ligne de commande qui peuvent être fournies à te.exe lors de l’exécution de tests sur la ligne de commande.

Étape 4 : Déboguer le problème

Il existe une grande quantité d’aide disponible pour examiner les problèmes liés aux périphériques et aux pilotes. Consultez la documentation de résolution des problèmes pour plus d’informations sur l’examen des journaux de test et l’utilisation du débogueur du noyau pour examiner les problèmes liés aux périphériques et aux pilotes.