2010-06-14 2 views
4

Mon entreprise participe à Windows Error Reporting via Winqual. Nous aimerions ajouter des données supplémentaires à nos rapports d'erreur, en utilisant WERRegisterMemoryBlock. Évidemment, nous aimerions nous assurer que cela fonctionne avant d'expédier notre prochaine version. Comment pouvons-nous le tester?Comment puis-je tester Windows Error Reporting?

Existe-t-il un moyen de prévisualiser localement précisément ce qui va être envoyé? Est-ce que cela reproduit de façon réaliste ce que nous allons pouvoir récupérer de Winqual?

Alternativement, pouvons-nous générer un vrai rapport à partir d'une machine de développement, puis récupérer le rapport de Winqual? Comment pourrions-nous distinguer ce cas de test du reste de nos données Winqual?

Répondre

2

Le meilleur test consisterait à mapper une version test uniquement de votre produit. Vous pouvez vérifier que les informations attendues est présent et assurez-vous de changer la version et télécharger un nouveau fichier de mappage de produit avant l'expédition

4

[...] peut-on générer un rapport réel à partir d'une machine de développeur , puis récupérer le rapport de Winqual?

  • construire une version de test spécial de votre application
  • téléverser un mappage de produit pour cette version de test Wer
  • accident de la version d'essai sur une machine avec des rapports d'erreur a permis
  • vérifier Winqual, après quelques jours un rapport doit apparaître
  • si le rapport ne vient pas avec des données CAB déjà, activer la demande de données supplémentaires (en Winqual)
  • version test e à nouveau sur une machine avec des rapports d'erreur activée
  • vérifier Winqual, après quelques jours un rapport avec des données CAB devrait être en attente pour vous
  • télécharger les données CAB et vérifier si/qu'il contient ce dont vous avez besoin (vous devrez utiliser WinDbg pour obtenir l'image complète, VS n'est pas aussi complet avec minidumps que WinDbg)

Comment pourrions-nous distinguer ce test cas du reste de nos données Winqual ?

  • donner la version de test un nom spécial et la version (nom EXE et * .rc)
  • juste en utilisant un "nom de produit" différent et "la version du produit" (= REH noms conviviaux) ne suffit pas pour obtenir un ID d'événement supplémentaire/seau, mais un nom EXE supplémentaire plus "Nom du produit" pour le mappage d'application devrait faire l'affaire
+0

J'ai également utilisé un plugin spécial dans notre application qui ne livre pas aux clients mais force un crash en déréférençant un pointeur NULL. En faisant cela, vous avez une manière reproductible de planter le programme à la demande. –