Je rencontre un problème d'exécution de mes tests via Nunit. Je ne sais pas pourquoi mais chaque test fonctionne deux fois. Le point est que sur un autre ordinateur portable, il ne fonctionne normalement qu'une seule fois. P>
Avez-vous le même problème et savez comment y faire face? P>
6 Réponses :
Le problème se pose généralement lorsque vous chargez un conteneur de test (.dll) plusieurs fois. p>
Ceci peut se produire si vous chargez les conteneurs de test à partir d'un flodeur racine qui présente à la fois des dossiers Bin et Obj à l'intérieur, ce qui est une configuration typique de projets Visual Studio. P>
Essayez de limiter votre récipient de test en cours de chargement dans les dossiers des bacs. P>
En fait, ça ne marche pas. Et pourquoi sur les autres ordinateurs portables, il fonctionne correctement mais sur celui-ci non.
Avez-vous recherché les fichiers DLL à l'intérieur des dossiers de solution? Vous pouvez également construire pour deux configurations différentes, telles que BIN \ version + BIN \ DEBUG
J'ai eu le même problème. Dans mon cas, j'ai eu à la fois le Extension Visual Studio et le de la Nunit Test Runner installé. Il semble qu'ils exécutent tous les deux les tests, ce qui entraîne des tests d'exécution deux fois. P>
Désinstallation de l'extension Visual Studio a résolu le problème. P>
J'ai la fois Visual Studio Extension et le package Nuget. Supprimer le package Nuget ne résout pas mon problème. Je vais essayer le contraire.
Si ce qui précède ne résout pas votre problème, prenez également un look dans votre panneau de commande, dans Programmes et fonctionnalités B> et désinstallez l'installation de la Nunit à partir de là.
Pour moi, j'ai désinstallé le package Nuget et redémarré vs.
Le fonctionnement du test peut également être dupliqué est lorsque des tests séquentiels ont accidentellement les mêmes paramètres de test.
[Test, Sequential] public void Integr_MController_DeleteGet_ReturnsViewAndModel( [Values("Do@london.com", "Do@london.com")] string firstEmail, [Values("Zyg@london.com", "Zyg@london.com")] HTTPstring updatedEmail) {test code}
J'ai eu un problème similaire dans lequel l'exécution du test avec le coureur Visual Studio Nunit3, le test ne fonctionnerait qu'une seule fois, mais lors de l'exécution de la ligne de commande avec Nunit3-Command.exe, le test fonctionnerait deux fois. J'ai passé beaucoup trop envie à poursuivre cela. J'ai remarqué que le coureur de ligne de commande rapportait que 2 tests ont été exécutés et sont arrivés à la conclusion qu'il s'agissait d'un problème dans la DLL. Cela peut sembler fou, mais j'ai copié tout mon code de test en une nouvelle classe, supprimé l'ancien, compilé et le test fonctionne maintenant une fois dans les deux scénarios. P>
Cela a fonctionné pour moi. Le projet était .NET V4.5 et était auparavant un projet MSTEST (avec l'icône Mstest dans VS). J'ai parcouru le code source dans une nouvelle bibliothèque de classe V4.7. Ceci a fait l'affaire.
Dans mon cas, il disposait d'une classe de base et d'une classe dérivée à la fois l'attribut TestFixture. Tous les tests de la classe dérivée fonctionnaient deux fois. P>
corrigé par l'attribut uniquement sur la classe de base. P>
Si vous mettrez le * .dll deux fois, le test obtient double exécuté. p>
vu sur Nunit.3.10.1, Nunit3-console 3.9.0 P>
Exemple: P>
Nunit3-console myTestdll.dll --Test = myNamesPace.test myTestdll.dll ** --Result = myResult.xml code> p> p>