31 votes

VS 2010, NUNit, et "Le point d'arrêt ne sera pas atteint actuellement. Aucun symbole n'a été chargé pour ce document"

J'utilise Windows 7 32 bits, VS 2010, .NET 4 DLL, NUnit (2.5.5) pour tester l'application. J'obtiens actuellement l'erreur suivante ; j'ai vu de nombreux messages et j'ai essayé ce qui suit :

  1. redémarrer la machine
  2. redémarrer VS
  3. supprimer bin/obj et recharger
  4. nettoyer/reconstruire

Mais je n'arrive pas à faire en sorte que NUnit atteigne mes points d'arrêt lors de l'exécution ;

J'ai configuré le projet de test NUNit pour qu'il pointe vers nunit.exe, et pour charger la DLL .NET 4 de test, mais lorsque je l'exécute, il ne trouve pas le point d'arrêt, "aucun symbole n'a été chargé". J'ai essayé debug >Windows > modules, il n'affiche même pas mon projet de test unitaire lorsque je le lance.

J'ai trouvé ceci, pour utiliser l'agent nunit : http://groups.google.com/group/nunit-discuss/browse_thread/thread/5680d7def5b6982f

Mais j'obtiens une erreur quand j'utilise l'agent nunit aussi. J'utilisais nunit-agent-x86.exe, mais j'obtiens une system.formatexception et il se plante...

Quelqu'un peut-il m'aider ?

Gracias.

43voto

Dave Bacher Points 7237

Il y a une autre question similaire ici sur Stack Overflow où j'ai posté ma réponse avec ce qui a marché pour moi. Je peux définir des points d'arrêt et lancer NUnit directement depuis Visual Studio 2010 avec Debug -> Start New Instance (ce qui, je pense, est votre objectif).

J'ai défini nunit.exe comme le programme externe dans projet -> Propriétés -> Débogage et j'ai ajouté :

<startup>
    <requiredRuntime version="4.0.30319" />
</startup>

au fichier nunit.exe.config qui se trouve à côté de l'exécutable nunit dans le répertoire d'installation de NUnit.

16voto

Brian Mains Points 31772

La solution était la suivante : lancer Nunit stand alone, puis dans VS 2010, faire debug > attach to process, et attacher au processus nunit-agent.exe, pas au processus nunit. Le processus Nunit n'a toujours pas fonctionné pour moi.

1voto

JimBayne Points 11

Je recevais le message "break point will not be hit ... no symbols loaded ..." pour un projet de site web. J'ai découvert qu'il y avait des erreurs de construction dans mon site Web (une des dll référencées a disparu pour une raison quelconque). Les reconstructions n'ont pas montré le problème jusqu'à ce que je sélectionne View=>Error list dans VS2010, avant la reconstruction. Remplacer la dll manquante dans le répertoire bin et mettre à jour la référence a résolu mon problème.

1voto

Daniel Points 1268

L'ajout de la section suivante dans le fichier nunit-x86.exe.config a fonctionné pour moi :

  <startup>
      <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client"/>
  </startup>

La section "sku" n'est nécessaire que si vous utilisez le profil client de .NET 4. Notez qu'une réponse précédente indiquait l'utilisation de 'requiredRuntime', qui est obsolète.

0voto

Mau Points 6480

Est-ce que vous exécutez NUnit et ensuite vous chargez la DLL ? Essayez plutôt d'ouvrir les propriétés du projet, onglet Debug, changez l'action de démarrage en 'Démarrer un programme externe', pointez sur l'exe NUnit, mettez le nom de votre DLL dans 'arguments de la ligne de commande'. Ensuite, lancez le projet de bibliothèque en faisant un clic droit dessus et en choisissant Debug -> start new instance.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X