tcm: Running Tests from a Test Plan Using the Command Line Utility
Sie können automatisierte Tests von der Befehlszeile aus ausführen, die Teil eines Testplans sind. Damit können Sie einen Testlauf mit einer Batch-Datei starten, so dass Sie einen Lauf planen können. Sie können auch die Testläufe von der Befehlszeile aus verwalten. Wenn Sie einen Testlauf exportieren möchten, sodass Entwickler die Testergebnisse mit Visual Studioanzeigen können, können Sie hierfür tcm verwenden. Sie können auch Testlaufergebnisse aus einer Visual Studio-Testlaufdatei (.trx) mit tcm veröffentlichen. Sie können angeben, welche Ergebnisse aus dieser Testlauf-Datei Sie wieder in Ihrem Testplan veröffentlichen möchten. Sie können diese Aufgaben mit den folgenden tcm-Befehlen ausführen:
tcm run /create
tcm run /list
tcm run /abort
tcm run /delete
tcm run /export
tcm run /publish
tcm.exe befindet sich auf jedem Computer, auf dem Visual Studio Ultimate installiert ist, im Verzeichnis <Drive:>\Program Files\Microsoft Visual Studio 10.0\Common7\IDE.
Weitere Informationen über das Importieren von automatisierten Tests in Ihr Testprojekt und Einrichten Ihres Testplan zum Ausführen dieser Tests finden Sie unter Erstellen von Testfällen auf Grundlage einer Assembly mit automatisierten Tests und Gewusst wie: Ausführen von Testfällen mit Automatisierung in der Befehlszeile mit TCM.
tcm run /create /title:title /planid: id /collection:CollectionURL /teamproject:project (suiteid:id /configid:configid | /querytext: query) [/settingsname:name] [/owner:owner] [/builddir:directory] [/testenvironment:name] [/login:username,[password]] [/include]
tcm run /list [/planid:id | /querytext: query] /collection:CollectionURL /teamproject:project [/login:username,[password]]
tcm run /abort /id:id /collection:CollectionURL /teamproject:project [/login:username,[password]]
tcm run /delete /id:id /collection:CollectionURL /teamproject:project [/login:username,[password]] [/noprompt]
tcm run /export /id:id /resultsfile:path /collection:CollectionURL /teamproject:project [/login:username,[password]] [/attachment:attachmentname]
tcm run /publish /suiteid:id /configid:id /resultowner:owner /resultsfile:path /collection:CollectionURL /teamproject:project [/title: runtitle] [/runowner:owner] [/build:buildnumber /builddefinition:builddefinition] [/flavor:flavor [/platform:platform] [/assignfailurestouser:user] [/login:username,[password]] [/buildverification]
Parameter
Parameter |
Beschreibungen |
---|---|
/collection:CollectionURL |
Gibt den URI der Teamprojektsammlung an. Das Format für den URI sieht folgendermaßen aus: http://Servername:Port/VirtuellerVerzeichnisname/Sammlungsname Wenn kein virtuelles Verzeichnis verwendet wird, hat der URI das folgende Format: http://Servername:Port/Auflistungsname |
/teamproject:project |
Der Name des Teamprojekts, das den Testplan enthält, in den Sie Ihre automatisierten Tests importieren möchten. |
/title: title |
Gibt den Titel an, den Sie für den Lauf verwenden möchten, den Sie erstellen, oder wenn Sie eine Testlauf-Datei veröffentlichen. |
/planid:id |
Gibt den Plan an, der die Tests enthält, die Sie ausführen möchten, oder den Plan, der den Testläufen zugeordnet ist, die Sie auflisten möchten. |
/suiteid:id |
Gibt die Testsammlungen an, die Sie ausführen möchten. Wenn Sie beispielsweise mehr als eine Testsuite ausführen möchten, können Sie die folgende Syntax als Teil des tcm-Befehls /suiteid:2 /suiteid:3 verwenden. Es kann auch die zu verwendende Testsammlung beim Veröffentlichen eines Testlaufs angegeben werden.
Hinweis
Um die Suite-ID zu finden, können Sie die Test-Suites für einen Testplan auflisten.Weitere Informationen finden Sie unter tcm: Listing test plans, test suites, test configurations, and environments.
|
/configid:configid |
Gibt an, welche Testkonfigurationen für die Testsammlungen ausgeführt werden sollen. Wenn Sie beispielsweise mehr als eine Testkonfiguration ausführen möchten, können Sie die folgende Syntax als Teil des tcm-Befehls /configid:2 /configid:3 verwenden. Es kann auch die zu verwendende Testkonfiguration beim Veröffentlichen eines Testlaufs angegeben werden. |
/querytext:query |
Gibt die Abfrage zurück, die zum Testlauf-Zurückgeben verwendet wird, oder die Abfrage, die verwendet wird, um die Tests auszuwählen, die Sie ausführen möchten. |
/settingsname:name |
Optional. Gibt die Testeinstellungen an, die Sie für diesen Testlauf verwenden möchten. Wenn Sie Test-Einstellungen mit diesem Parameter nicht auswählen, werden die Test-Standardeinstellungen für automatisierte Tests im Testplan verwendet. |
/owner:owner |
Optional. Gibt den Besitzer des Testlaufs an. |
/runowner:owner |
Optional. Gibt den Besitzer des Testlaufs an. |
/builddir:directory |
Optional. Gibt das Buildverzeichnis an, das bei der Suche nach Testassemblys für den automatisierten Test verwendet wird. Wenn dies nicht angegeben ist, wird der Buildspeicherort verwendet basierend auf dem Build, der dem Testplan derzeit zugewiesen ist. |
/testenvironment:name |
Optional. Gibt die Testumgebung an, die Sie für diesen Testlauf verwenden möchten. Wenn Sie eine Testumgebung mit diesem Parameter nicht auswählen, wird die Standard-Testumgebung für automatisierte Tests im Testplan verwendet. |
/id:id |
Gibt die Laufzeit-ID an, die Sie löschen, abbrechen oder exportieren möchten. |
/resultsfile:path |
Gibt den Speicherort an, der verwendet wird zum Testlauf-Exportieren oder Suchen des Testlaufs, um ihn zu veröffentlichen. Beispielsweise "c:\temp\ResultsForDeveloper.trx". |
/attachment:attachmentname |
Gibt den Namen der Anlage für einen Testlauf an, den Sie exportieren. |
/resultowner:owner |
Gibt den Besitzer für die Testergebnisse an. |
/build:buildnumber |
Optional. Gibt die Buildnummer an, mit der ein Testlauf veröffentlicht werden soll. Dieser Parameter muss mit /builddefinition verwendet werden. |
/builddefinition:builddefinition |
Optional. Gibt die Builddefinition an, mit der ein Testlauf veröffentlicht werden soll. Dieser Parameter muss mit /build verwendet werden. |
/flavor:flavor |
Optional. Gibt die Buildkonfiguration an. Zum Beispiel Version. Dieser Parameter kann nur verwendet werden, wenn der Parameter /build verwendet wird. |
/platform:platform |
Optional. Gibt die Buildplattform an. Zum Beispiel x86. Dieser Parameter kann nur verwendet werden, wenn der Parameter /build verwendet wird. |
/assignfailurestouser:user |
Optional. Gibt an, welchem Benutzer fehlgeschlagene Tests im Testlauf zugewiesen werden sollen. |
/buildverification |
Optional. Gibt an, dass dieser Testlauf Buildüberprüfungstests enthält, die die grundlegende Funktionalität des Builds überprüfen. |
/include |
Optional. Gibt an, dass alle Tests, die ausgewählt wurden für den Testlauf, enthalten sind, auch wenn die Tests nicht in den aktiven Zustand gesetzt ist. |
/noprompt |
Optional. Gibt an, dass der Benutzer nicht aufgefordert wird, das Löschen eines Testlaufs zu bestätigen. |
/login:username,[password] |
Optional. Gibt den Namen und das Kennwort eines Benutzers an, der am Anwendungsebenenserver für Team Foundation Server angemeldet ist und über Berechtigungen zum Ausführen des Befehls verfügt. Diese Option können Sie verwenden, wenn Ihre Windows-Anmeldeinformationen nicht über die entsprechenden Berechtigungen verfügen, wenn Sie die Standardauthentifizierung verwenden oder wenn Sie nicht mit einer Domäne verbunden sind. |
Sie können Parameter für /collection und /teamproject zur XML.Datei tcm.exe.config hinzufügen, die sich in demselben Verzeichnis wie tcm.exe befindet: <Drive:>\Program Files\Microsoft Visual Studio 10.0\Common7\IDE. Wenn Sie diese der Datei hinzufügen, müssen Sie sie nicht in der Befehlszeile eingeben, jedes Mal, wenn Sie einen tcm-Befehl ausführen. Sie können diese Schlüssel und ihre Werte der Datei wie im Folgenden im Abschnitt appSettings hinzufügen:
<appSettings>
<add key="TeamFoundationServer" value="http://<ServerName:Port/VirtualDirectoryName/CollectionName>"/>
<add key ="TeamProject" value="DinnerNow"/>
</appSettings>
Ausführen von Tests und Verwalten von Testläufen
In den folgenden Beispielen wird davon ausgegangen, dass Sie eine Visual Studio Eingabeaufforderung gestartet haben.
Klicken Sie auf Start, zeigen Sie auf Alle Programme, Microsoft Visual Studio 2010 und Visual Studio-Tools, und klicken Sie anschließend auf Visual Studio-Eingabeaufforderung (2010).
Der Eingabeaufforderung wird im Ordner geöffnet: <drive>:\Program Files\Microsoft Visual Studio 10.0\VC
Wechseln Sie in das Verzeichnis, das die aus dem Testprojekt erstellte Assembly enthält.
Wichtig
Zum Ausführen von automatisierten Tests in der Befehlszeile mit tcm.exe müssen Sie Ihre Testfälle Ihren automatisierten Tests zugeordnet haben. Sie müssen auch Ihren Testplan korrekt einrichten, um einen Build verwenden, um die auszuführenden automatisierten Tests zu suchen, wenn Sie die Build-Informationen nicht in der Befehlszeile angeben. Weitere Informationen hierzu finden Sie unter How to: Create Test Cases from an Assembly of Automated Tests Using tcm.exe.
Um die notwendigen IDs für die folgenden Befehle zu erhalten, müssen Sie tcm verwenden, um die Test-Artefakte sowie deren IDs aufzulisten. Weitere Informationen hierzu finden Sie unter tcm: Listing test plans, test suites, test configurations, and environments und Gewusst wie: Ausführen von Testfällen mit Automatisierung in der Befehlszeile mit TCM.
Der folgende Befehl führt Tests mit einer Testpunktabfrage aus:
tcm run /create /title:"Nightly Run" /planid:1 /querytext:"SELECT * FROM TestPoint WHERE ConfigurationId=13" /settingsname:"<Name of your automated test settings>" /testenvironment:"<Name of a matching environment>" /collection:<CollectionURL> /teamproject:<Team Project name>
Der folgende Befehl führt Tests mit einer bestimmten Testsammlung und -konfiguration aus:
tcm run /create /title:"Nightly Run" /planid:1 /suiteid:5 /configid:13 /settingsname:"<Name of your automated test settings>" /testenvironment:"<Name of a matching environment>" /collection:<CollectionURL> /teamproject:<Team Project name>
Der folgende Befehl listet die Testläufe für einen bestimmten Testplan auf:
tcm run /list /planid:1 /collection:<CollectionURL> /teamproject:<Team Project name>
Der folgende Befehl löscht einen bestimmten Testlauf:
tcm run /delete /id:1009 /collection:<CollectionURL> /teamproject:<Team Project name>
Der folgende Befehl exportiert einen Testlauf in eine TRX-Datei:
tcm run /export /id:1273 /resultsfile:"c:\temp\latest.trx" /collection:<CollectionURL> /teamproject:<Team Project name>
Der folgende Befehl veröffentlicht einen Testlauf für eine spezifische Testsuite und Test-Konfiguration und weist den Besitzer neu zu. Dadurch werden die vorhandenen Prüfpunkte für Testfälle in der Testsuite gepaart mit dieser Konfiguration auf die Ergebnisse in der TRX-Datei aktualisiert:
tcm run /publish /suiteid:5 /configid:13 /resultowner:"<Name of new owner>" /resultsfile:"c:\temp\latest.trx" /collection:<CollectionURL> /teamproject:<Team Project name>
Siehe auch
Weitere Ressourcen
tcm: Listing test plans, test suites, test configurations, and environments
tcm: Importing and Running Automated Tests for a Test Plan from the Command Line