2009-03-17 6 views
7

Je commute entre Java et C# et une chose me manque quand je code en C# est la vérification d'exception forcée (bien que j'admette que je trouve parfois ça irritant parfois pendant que je code en Java).Existe-t-il une alternative gratuite à Exception hunter?

Je suis conscient que Exception Hunter peut vous aider à identifier les exceptions qu'un code peut générer, mais existe-t-il une alternative gratuite/moins chère? Je ne peux pas vraiment justifier £ 200 pour ce genre d'addon de logiciel car c'est seulement un ennui plutôt qu'un problème majeur.

+2

Laissez-les partir, mec. Vous ne pouvez pas contrôler le monde, vous savez. – Will

+1

Mais je veux. Je veux vraiment. : p –

+0

BTW, je +1 parce que je suis intéressé à des fins de documentation, pas parce que je crois que je peux gérer toutes les exceptions ... – Will

Répondre

8

Oui. Lancez le Microsoft Pex gratuit sur votre code. Il montrera toutes les exceptions possibles qui peuvent être jetées.

+0

On dirait un super outil, merci pour le lien. Dommage que la version commerciale ne fonctionne qu'avec l'édition VS Team. – Dave

+1

Si vous n'avez pas l'édition Team de VS, vous pouvez toujours utiliser l'outil depuis la ligne de commande. Il génère une sortie HTML je pense. –

+0

Cela ne fait pas d'analyse statique pour trouver des exceptions levées, il analyse simplement les méthodes en les appelant avec des paramètres déterminés heuristiquement. Il est conçu pour générer des tests unitaires. http://exceptionalplugin.codeplex.com/ - c'est un plugin ReSharper qui fera l'affaire. Agent Johnson est un bon complément - http://code.google.com/p/agentjohnsonplugin/ –

0

Même si je comprends la chose exceptions forcée, je ne suis pas sûr de savoir comment il est vraiment essentiel ... par exemple, la plupart des intéressantes exceptions sont celles que vous ne seriez pas comprennent normalement (ou même attendre). Par exemple, je combats actuellement ce qui ressemble beaucoup à un bogue de CLI dans CF35, levant par intermittence MethodMissingException du code qui existe réellement (emphase: par intermittence).

Si vous souhaitez documenter vos exceptions, utilisez le balisage ///<exception ... >...</exception>. Pour d'autres idées sur ce thème, peut-être voir Vexing Exceptions (Je me demande si GhostDoc pourrait aider un?)

0

Get Exceptional site Web est une possibilité. L'idée de base est que vous créez un logiciel et toutes les exceptions sont envoyées à ce site sur votre compte où vous pouvez les récupérer. Bien sûr, il ne lit pas votre code et voit quelles exceptions sont là.

Je ne sais pas s'il existe encore une bibliothèque C# mais l'API n'est pas trop difficile.