9
votes

TFS 2013 automatisé Build: Y a-t-il un moyen d'exécuter les tests à partir du dossier SRC

J'utilise actuellement le modèle de processus de construction par défaut de TFS 2013 pour mes constructions automatisées.

J'ai configuré le paramètre de la sortie à être asconfiguré pour obtenir la même structure de dossiers que ma solution Visual Studio (il existe plusieurs projets dans la solution et je ne veux pas qu'ils soient tous abandonnés dans le même dossier).

Le problème est que lorsque le processus de construction tente Pour exécuter les tests, il cherche n'importe quel assemblage dans le dossier bin , tandis que ma configuration de construction le fait de manière à ce qu'il n'y ait que un dossier src .

Y a-t-il un moyen de spécifier à regarder le dossier src à la place? Ne devrait-il pas être la valeur par défaut lorsque vous utilisez le paramètre asconfiguured ?

EDIT : Juste pour le préciser, il y a généralement 3 dossiers générés lorsque Exécution d'une construction automatisée TFS (SRC, BIN, TST). Lorsque vous utilisez Asconfiguré pour l'emplacement de sortie, il n'y a pas de dossier bin. J'ai essayé une suggestion qui nécessitait la modification du paramètre Sources de test du processus de construction, et je reçois le même problème qu'avant: xxx


4 commentaires

J'ai eu ce problème exact, m'a pris des heures pour déterminer qu'il se passait de asconfiguré qui a cessé d'exécuter les tests, l'avez-vous obtenu?


Il est dûment dommage que la réponse officielle de la SM est au code difficile sur le chemin. Voir social.msdn.microsoft.com/forums/sqlserver/en-us/...


Voir aussi social.msdn.microsoft.com/forums/vstudio/en-us/...


Le tour " -Gutant-unittest-résultats-in-tfs / 24327943 # 24327943 # 24327943 "Titre =" Utilisation d'une utilisation asconfigurée et peut toujours obtenir des résultats unitts dans TFS "> Stackoverflow.com/questions/24208054/... ) Mais j'ai trouvé que je a rencontré de nouveaux problèmes avec [DeploymentItem] s.


4 Réponses :


1
votes

Dans votre définition de construction, modifiez la valeur du paramètre "Sources de test SPEC" sur *** Test * .dll (en supposant que les assemblages de vos tests d'unité sont suffixés avec .Test.dll)

Edit: Veuillez utiliser ** \ * test * .dll; ** \ * Test * .appx


5 commentaires

Puis essayez .. * test .dll


J'ai édité la réponse. N'a pas réalisé que tellement omis mes blackslashes. J'espère que cela t'aides


@Hamidshahid Cela ne semble pas fonctionner pour moi non plus. L'utilisation des deux autres options fonctionne, mais la configuration ne semble pas exécuter des tests.


Cela ne fonctionne pas pour moi non plus. En outre, ** \ * test * .dll est la valeur par défaut (au moins pour le flux de travail TFVCTemplate.12.xaml)


Ceci seul ne fonctionnera pas car le répertoire bin est vide lors de l'utilisation de l'option de construction asConfigured . Vous devrez mettre en œuvre un script comme @deli suggéré. Ensuite, la valeur de votre réglage fonctionnera comme conçue.



2
votes

Ce que j'ai fini par faire est d'utiliser un script PowerShell en tant qu'événement post-construction pour copier mes ensembles de test dans le dossier BIN de la construction.

Il existe des scripts PowerShell mis à disposition pour TFS 2013 sur CodePlex, et j'ai modifié un légèrement pour accueillir mes besoins.

En faisant cela, j'ai pu utiliser les paramètres par défaut pour exécuter les tests et fonctionnait comme un charme.


1 commentaires

J'utilisais déjà une version modifiée du script PowerShell, il suffit donc d'ajouter mes assemblages de test. Merci!



1
votes

Essayez d'utiliser ce fichier masque: .. \ ** \ * test * .dll

Cela fonctionne pour moi.


0 commentaires

0
votes

J'ai "asconfiguré" régler sur la plate-forme x64 qui place les fichiers binaires dans src \ x64 \ version \ (et il utilisait pour les placer dans bin \ x64 \ version \ sans ce commutateur). Donc, j'ai fini par utiliser .. \ \ \ \ \ \ src \ ** \ * test * .dll comme mes "sources de test spécifiques".


0 commentaires