Wenn Sie eine TestSettings-Datei für die Lösung bereitstellen, können Sie anscheinend die Option "Bereitstellung aktivieren" deaktivieren und verhindern, dass mstest versucht, in dem ...TestResults\...\out
Ordner ausgeführt zu werden, in dem Ihre zusätzlichen Dateien nicht kopiert werden (es sei denn, Sie machen sie zu einer Bereitstellungsoption). .
Dies ist auch nützlich, wenn Sie davon abhängen, dass sich die zusätzlichen Dateien in einer beibehaltenen Ordnerstruktur befinden, da Bereitstellungselemente scheinbar alle direkt (flach) in den temporären Ausführungsordner (out) kopiert werden, wenn Sie die Option Bereitstellung, Ordner hinzufügen in den Testeinstellungen verwenden ( Die obigen Antworten legen nahe, dass Sie die Struktur beibehalten können, wenn Sie jedes Element als eigenes DeploymentItem hinzufügen.
Bei mir funktionierte es einwandfrei, Tests direkt in Visual Studio auszuführen (dh meine zusätzlichen Dateien in ihrer Struktur wurden gefunden und von Tests verwendet), da ich vor langer Zeit aus einem anderen Grund eine TestSettings-Datei erstellt hatte (bei der die Bereitstellung aktiviert ist), jedoch nicht bei TeamCity hat mstest ausgeführt, um Tests auszuführen, da ich nicht angegeben habe, dass die TestSettings-Datei verwendet werden soll.
Um eine TestSettings-Datei in Visual Studio zu erstellen, klicken Sie mit der rechten Maustaste auf die Lösung, wählen Sie Neues Element und wählen Sie die TestSettings-Vorlage aus. Um die TestSettings-Datei an der Eingabeaufforderung von mstest.exe zu verwenden, fügen Sie die Option hinzu /testsettings:C:\Src\mySolution\myProject\local.testsettings
(oder fügen Sie sie als zusätzliche Befehlszeilenoption in TeamCity mit dem entsprechenden Pfad hinzu).