J'essaie de comprendre comment une bibliothèque fonctionne et j'aimerais pouvoir visualiser quelles méthodes et lignes de code sont exécutées en réponse à l'entrée de l'utilisateur (par exemple, une pression sur une touche ou un clic de souris). Existe-t-il un moyen de le faire dans .NET?Visualiser le code impliqué dans une action?
Répondre
Si vous êtes en mesure d'exécuter l'action que vous souhaitez analyser à partir d'un test NUnit, vous pouvez utiliser l'utilitaire NCover pour visualiser les parties du code qui ont été exécutées et celles qui ne l'ont pas été.
Hope this helps!
Adam
Il y a un outil merveilleux, libre de Microsoft appelé Pex. Une fois installé, vous pouvez cliquer sur une méthode avec le bouton droit de la souris et sélectionner "Exécuter l'exploration Pex". Il va analyser le code et vous montrer les entrées pour toucher chaque partie de la méthode.
Pour plus d'informations, voir Pex CodeDigger. Voici une capture d'écran en action:
Vous pouvez utiliser un outil de couverture de code comme NCover même sans frameworks de tests unitaires. Il suffit de lancer l'application via NCover, et vérifiez les résultats. Editer: vous pouvez également consulter PartCover, une alternative open source.
La détection de couverture de code peut-elle être limitée à une partie seulement de l'exécution de l'application (à l'exclusion du démarrage/de l'arrêt)? – Qwertie
Dépend de l'outil. Avec NCover, vous pouvez limiter entre autres la couverture d'assemblages spécifiques en utilisant des commutateurs de ligne de commande (voir http://www.ncover.com/documentation/console/flags pour plus de détails). – csgero
- 1. Visualiser B-Spline dans .NET
- 2. Comment visualiser une texture de profondeur dans OpenGL?
- 3. comment obtenir le code HTML résultant d'une action MVC?
- 4. Visualiser les avertissements du compilateur
- 5. PHP et Postgres: Visualiser vs SELECT, quand utiliser une vue?
- 6. Pour visualiser la séquence des codes PHP
- 7. Comment visualiser des données audio?
- 8. XSS sans qu'un serveur soit impliqué - est-ce dangereux?
- 9. Visualiser le SQL généré à partir de Linq To Entities
- 10. Comment planifier une action personnalisée différée à partir d'une action personnalisée immédiate dans Wix/DTF?
- 11. Comment puis-je visualiser XML dans Flex/Flash?
- 12. Enregistrer un nombre dans une chaîne de caractères entiers et le rappeler dans une action ultérieure
- 13. Lorsque le bouton d'entrée est cliqué, effectuer une action
- 14. Comment faire pour rediriger le filtre vers une autre action?
- 15. problème dans plusieurs validation.xml pour une seule action dans struts2
- 16. Comment puis-je passer la liste Type <T> d'une action à une autre action dans le contrôleur
- 17. Comment visualiser les octets avec C/C++
- 18. Struts2: lire un tableau d'entrée dans une action
- 19. Le code ne peut pas effectuer une recherche AD
- 20. Modifier une action dans TableView sans bouton Modifier?
- 21. Comment remplacer une action de formulaire dans Drupal?
- 22. Action standard
- 23. Macro VS2008: Effectuer une action sur chaque fichier de code de la solution
- 24. Dans ASP.NET MVC, comment recevoir le dictionnaire de paramètres dans une action?
- 25. Action personnalisée C# dans Wix
- 26. Visualiser l'arborescence d'un site Web visuellement?
- 27. Comment dans le code
- 28. action-validation.xml dans struts 2
- 29. Comment fournir une action "succès" à l'utilisateur dans ASP.NET MVC?
- 30. Modifier la couleur d'un bouton dans une action contextuelle standard
Je viens d'essayer ceci avec SharpDevelop + PartCover, mais mon formulaire ne s'initialisera pas pendant un test unitaire à cause d'une exception mystérieuse - "L'enregistrement DragDrop n'a pas réussi" De toute façon ce n'est pas une bonne solution car je veux voir le code qui s'exécute en réponse à une action spécifique, pas tout le code qui s'exécute. – Qwertie
Il peut certainement être difficile de tester le code de l'interface utilisateur. En supposant que vous ayez une couche d'interface utilisateur très fine où un événement de clic sur un bouton n'applique qu'une seule méthode sur une classe de contrôleur, vous pouvez tester la méthode du contrôleur à la place de l'événement click. Cela peut vous rapprocher de ce dont vous avez besoin, bonne chance! –