2010-09-07 3 views
8

MS Test me tue.MS Runner est-il plus rapide?

Il est si lent par rapport à NUnit. Je suis coincé avec cela parce que je dois être capable d'obtenir des résultats de test dans TFS facile. (De plus cela fonctionne mieux avec Pex et j'utilise ça aussi).

Mais je voudrais vraiment que ça aille plus vite. Même un peu plus vite serait bien.

Est-ce que quelqu'un a fait un testeur pour les tests de test MS qui va plus vite que celui intégré dans Visual Studio?

+0

J'ai lu des rapports indiquant que MSTest crée des copies de dossiers bin pour chaque test, ce qui ralentit les temps d'exécution. Vérifiez pour voir s'il y a un paramètre qui l'éteint. Une autre option serait d'utiliser le coureur de la console pour MSTest. – Gishu

Répondre

1

Vous devriez pouvoir intégrer NUnit dans TFS avec certaines tâches de construction personnalisées (which some people have done). Si vous voulez vraiment devenir fou, vous pouvez transformer les résultats des tests NUnit en fichiers .TRX et les importer directement en utilisant le MSTEST command line options

+0

Idée sympa, mais ce projet n'a pas été mis à jour depuis presque un an. (Et je devrais le faire avec TFS 2010) Je suppose que je pourrais rouler le mien, mais je ne suis pas sûr que je serais en mesure d'obtenir du temps pour cela approuvé. Donc, je devrais le faire sur mon temps libre, et je ne suis pas sûr que cela en vaille la peine (j'ai tellement d'autres projets qui me tiennent occupé dans mon propre temps de dev). – Vaccano

+0

Même sans les tâches de construction personnalisées, vous pouvez toujours exécuter un exécutable en tant qu'étape de construction. Beaucoup de gens en ligne ont trouvé des moyens de convertir la sortie NUnit en fichiers .TRX. À ce stade, vous pouvez les importer directement dans TFS et les lier directement à une construction. – Josh

3

La plate-forme Gallio fournit un adaptateur de test pour MSTest. Vous pouvez ensuite exécuter vos tests avec n'importe quel coureur supportant Gallio, y compris les coureurs intégrés tels que Echo ou Icarus, et les coureurs de tierce partie tels que TD.Net ou R#.

Les chemins d'essai non-GUI sont généralement légèrement plus rapides. Ainsi, vous pouvez essayer Echo ou le PoSh snap-in.

+0

L'utilisation du testeur Resharper pour exécuter les tests unitaires MSTest est assez rapide.Plus rapide que le coureur de test VS je pense. –

1

TestDriven.Net est probablement le plus rapide. Puis va msTest coureur intégré dans Visual Studio. J'ai trouvé que le banc d'essai ReSharper est plus lent qu'introduit, surtout si la solution est grande. Au moment où je faisais des recherches, ReSharper semblait faire une reconstruction complète de la solution, où msTest ne faisait que construire des projets modifiés.

donc votre meilleur choix serait TestDriven.NET

0

Albacore a une tâche MSTest.

https://github.com/derickbailey/Albacore/wiki/MSTest-Task

Vous pouvez écrire un fichier de coupe simple qui construit votre projet, puis a couru la tâche MSTest.

Ma recommandation est que, dans un premier temps, vous écrivez un projet pour exécuter uniquement la tâche MSTest albacore et le temps que cela prend. PS: Je n'utiliserais pas Gallio car, d'après mon expérience, ce testeur prend 6 secondes de plus que TestDriven.net pour lancer des tests NUnit. PS 2: Ma vraie recommandation est d'abandonner MSTest pour xUnit.net ou NUnit