J'ai configuré Specflow pour cibler le framework Mstest (au lieu de Nunit) en le spécifiant comme ceci dans l'app.config de ma bibliothèque de classe 'SPECS':
[System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.3.3.0")] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [Microsoft.VisualStudio.TestTools.UnitTesting.TestClassAttribute()] ...
3 Réponses :
J'ai dû recréer le projet en tant que projet de test code> et non simplement une bibliothèque de classe code> - parce que j'avais commencé le développement avec Nunit et Specflow, j'avais créé une vanille Bibliothèque de classe pour contenir mes spécifications qui avaient les attributs Nunit décorés. Je pensais que je pouvais simplement modifier l'app.config de ce projet existant pour pointer sur le cadre Mstest et arrêter d'utiliser Nunit, mais VS2010 n'a jamais reconnu les tests, malgré la création correcte des talons par l'outil personnalisé de Specflow. P>
Alors ... j'ai ajouté un nouveau projet de test code> à ma solution, déplacé tout mon code de spécification à ce nouveau projet, puis recompanté et Viola, VS2010 reconnaît les tests. Je suis sûr qu'il y a un GUID qu'il recherche dans le fichier XML du fichier .csproj ou quelque chose qui lui indique de filer le cadre de test, mais je n'ai pas creusé cela loin. P>
J'espère que cela aide quelqu'un. P>
Selon Helper Dror et ajoutez après l'élément Filealignment et recharger le projet. Il devrait maintenant être un projet de test MS et vous obtenez la fonctionnalité de test MS dans le contexte de ce projet. Les GUID signifient: p>
Pour modifier le modèle de projet de votre bibliothèque de classe dans un projet de test, modifiez le fichier .csproj et ajoutez la ligne suivante: au premier élément de groupe de propriété: P> <PropertyGroup>
<ProjectTypeGuids>{3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>