2009-06-22 18 views
3

Je configure un projet MSBuild pour exécuter un test NUnit, en utilisant le MSBuild Community Tasks Project.Filtrer dans la catégorie pour les tâches NUnit MSBuild?

Avec ces paramètres, je vais pouvoir exécuter les tests NUnit:

<Target Name="Test" DependsOnTargets="Build"> 
    <CreateItem Include="$(ProjectTestDir)\$(ClassLibraryOutputDirectory)\*.Tests.dll"> 
     <Output TaskParameter="Include" ItemName="TestAssembly" /> 
    </CreateItem> 
    <NUnit Assemblies="@(TestAssembly)" /> 
</Target> 

... mais comment puis-je utiliser seulement certains tests - dire ceux avec une catégorie spécifique? Nous avons ajouté différentes catégories à nos tests - certaines pour fonctionner tout le temps, d'autres pour ne fonctionner que la nuit, etc.

Je ne vois aucun paramètre me permettant de filtrer dessus, ou est-ce que j'ai manqué quelque chose? ? Certains d'entre vous ont sûrement eu le même problème et l'ont-ils résolu d'une façon ou d'une autre? Il n'est pas nécessaire d'utiliser ce projet de tâches de communauté msbuild.

Répondre

4

En regardant dans le CHM, il y a une propriété IncludeCategory ... ressemble à ce que vous cherchez? (Le fichier CHM est installé dans C: \ Program Files (x86) \ MSBuild \ MSBuildCommunityTasks)

+0

Parfait! Je savais qu'il me manquait quelque chose - je cherchais de la documentation, mais il était là :) –

+0

Comment puis-je l'appliquer pour le serveur de construction TFS 2012 et les tests NUnit? Devrais-je décorer les tests avec l'attribut 'Category (" IntegrationTest ")' (par opposition 'TestCategory (" IntegrationTest ")' pour MSTests) et ensuite le 'Test case Filter' de' TestCategory! = IntegrationTest' devrait filtrer les NUnit ? Bonus: comment faire avec les tests xUnit? Je ne vois aucun attribut de catégorie. –

+1

@CsabaToth Pour xunit, il y a un 'TraitAttribute' et la tâche MSBuild' xunit' permet le filtrage via une propriété AFAIK (j'utilise personnellement le runner de console, et il a une option '/ -trait' dans sa syntaxe de ligne de commande) . Je ne vais pas deviner (ou polluer mon esprit!) En recherchant l'équivalent MSTest pour vous. (BTW 'TraitAttribute' n'est pas' sealed' donc il est courant de rouler les attributs appropriés avec les clés connues (et les valeurs)) –