0

J'ai lu et lu et lu pendant des jours, et j'abandonne. Il y a des articles qui vous disent comment faire cela - presque. Soit comment renommer un fichier de résultats spécifique, soit tester dans MSBuild (TONNES de ceux-ci), ou modifier la racine de la structure du dossier de placement de fichiers. Ces réponses ne sont pas utiles. Je teste directement dans VS 2012. [SadFace] Google n'était pas mon ami cette fois. Sur nos machines de test, VS 2012 crée des fichiers de sortie de test au bas d'une longue structure de dossiers. Il ressemble à ceci (y compris les fichiers):Comment puis-je spécifier les résultats de test WEB Nom du dossier de sortie dans VS2012 Ultimate

<solutionFolder>\ 
     TestResults\ 
     <TestNameFrom.testSettingsFileWithDateAndTime>\ 
      In\ 
      <GuidForThisTestRun>\ 
       <machineName>\ 
       RecordedMedia.trmx 
       ScreenCapture.wmv 
       UITestActionLog.html 

Cette structure de fichier est non seulement déraisonnable (car il n'y a pas de corrélation entre un test et il est un dossier), il est également difficile de naviguer. Et il n'y a RIEN dans aucun des dossiers de TestResults jusqu'à ce que le dossier de nom de machine. Cela signifie que nous devons naviguer dans trois dossiers supplémentaires chaque fois que nous avons besoin de regarder les résultats des tests ou de les transmettre aux développeurs (en supposant que nous puissions savoir à quoi regarder). S'il y a plusieurs tests dans la course, il y aura plusieurs GUID dans le dossier "In", avec un dossier nommé "machine-name" dans cela, et les fichiers de résultats de test dans le dossier de nom de machine. Par exemple (y compris les fichiers):

RegressionTesting\ 
     TestResults\ 
     WebRegressionTests _2015-09-23 14_27_20_\ 
      In\ 
      36fe2581-7e14-c3d0-b0fa-1956665ab20d\ 
       DEV0282C\ 
       RecordedMedia.trmx 
       ScreenCapture.wmv 
       UITestActionLog.html 
      e3448182-eb47-1840-cbde-ca5bd5660270\ 
       DEV0282C\ 
       RecordedMedia.trmx 
       ScreenCapture.wmv 
       UITestActionLog.html 
      ed71d0f3-4fc5-42ab-96e3-b68efecdf4d8\ 
       DEV0282C\ 
       RecordedMedia.trmx 
       ScreenCapture.wmv 
       UITestActionLog.html 

(Il y a aussi un dossier « Out », un frère à « In », mais il est toujours vide.)

Ce que je voudrais est de préciser les structure de dossier moi-même, pour inclure (à côté de la date et de l'heure) le nom et le numéro du cas de test (à partir de Microsoft Test Manager), mais pour EXCLURE ces trois couches de dossiers vides, inutilisées et inutiles. Ma structure de dossier idéal ressemble à ceci:

Regression\ 
     TestResults\ 
     64105 Delete Bumpuses Dogs 2015-09-23 14_27_20\ 
      RecordedMedia.trmx 
      ScreenCapture.wmv 
      UITestActionLog.html 

En exploration, je trouve que TestContext.TestResultsDirectory contient le chemin absolu du dossier résultats. J'ai considéré essayer de définir le nom du dossier dans le code, mais TestContext.TestResultsDirectory est en lecture seule. Triste. Ça aurait été si facile. . .

J'ai également envisagé de renommer manuellement les dossiers et de déplacer les fichiers à la fin du test après la fermeture du navigateur. Problème: Les fichiers sont (apparemment) créés dans un dossier temporaire quelque part, et ne sont pas déplacés dans leurs dossiers documentés avant la fin du code utilisateur.

Voici deux des pages que j'ai lu (c'est tout ce que je suis autorisé à poster!?!?).

VS2012 Unit Tests: How to change the location of the TestResults folder (pauvres Thomans jamais obtenu une réponse à cette question, je crains que je vais être dans le même bateau.)

https://msdn.microsoft.com/en-us/library/jj635153.aspx

Répondre

2

le nom du dossier peut être modifié via la page « les résultats des tests noms » dans l'éditeur pour le fichier .testsettings. La page peut être vue dans cette image à partir de Visual Studio 2013 édition Ultimate.

enter image description here

Je ne sais pas d'aucune façon de modifier la mise en page des répertoires qui contiennent les résultats des tests.

Le répertoire out est l'emplacement où les fichiers utilisés pour les tests sont déployés.Selon le type de test, les fichiers incluent ici .dll, .webtest, .loadtest, .csv (ou .xml, etc, comme utilisé pour la conduite de données) et d'autres.

Le répertoire in contient les fichiers générés lors de l'exécution des tests. Les noms in et out ont du sens lorsqu'ils sont visualisés à partir des phases d'exécution des tests. Les sorties du déploiement sont écrites dans le répertoire out. Les entrées pour l'analyse des résultats de test se trouvent dans le répertoire in.

+0

Merci pour la réponse, mais je ne vois pas une page "Test Results Names". La page "Général" a un "Schéma défini par l'utilisateur". Il crée le dossier "WebRegressionTests _2015-09-23 14_27_20_" dans l'exemple, mais c'est le seul changement dans les dossiers de l'éditeur (je posterais l'image mais je ne sais pas comment). Il existe des options de dossier sur la page Tests unitaires, mais ce sont tous des emplacements d'assemblage et de chargement de DLL, et je fais des tests web, de toute façon. Rien de tel sur la page Web Test. BTW, je l'ai posté du code, mais il ne semblait pas y avoir de publier. (Et pourquoi ne pouvez-vous pas entrer une nouvelle ligne dans cette boîte de dialogue?) – Barniferous

+0

@Barniferous Screenshot a été ajouté. – AdrianHHH

+0

Merci encore d'avoir pris le temps de nous aider. 1. Ce n'est pas à quoi ressemble la page VS2012. 2. C'est le même paramètre que j'ai décrit, "Schéma défini par l'utilisateur", même jusqu'au nom, comme paramètre sur la page Général de l'éditeur VS2012 .testSettings. Changer le nom du premier dossier sous le dossier TestResults n'aide pas vraiment. (En fait, nous l'avons fait - c'est le dossier "WebRegressionTests 2015-09-23 14_27_20" que j'ai mentionné). – Barniferous