UiPath Documentation
cicd-integrations
2024.10
false

Benutzerhandbuch zu CI/CD-Integrationen

Letzte Aktualisierung 7. Mai 2026

Testen eines Pakets oder Ausführen eines Testsatzes im Test Manager

Testen eines Pakets oder Ausführen eines Testsatzes im Test Manager

Voraussetzungen

  1. Verwenden Sie die neueste Test Manager-Version (Test Manager 2.2510 oder höher für die Bereitstellung der Automation Suite oder Test Manager 25.10 oder höher für die eigenständige Installation).

  2. Wenn Sie bereits einen Testsatz im Orchestrator ausführen, importieren Sie den Testsatz im Test Manager. Weitere Informationen finden Sie unter Test Manager – Importieren von Orchestrator-Testsätzen. Rufen Sie den Testsatzschlüssel nach dem Import ab.

  3. Erstellen Sie ein Projekt im Test Manager und rufen Sie den Projektschlüssel ab. Rufen Sie den Projektschlüssel ab unter Test Manager > Registerkarte Dashboard > Projekte > Alle Projekte.

  4. Erstellen Sie ein Paket oder einen Testsatz mit automatisierten Testfällen. Rufen Sie den testset-key ab: Test Manager > Registerkarte Testsätze > Spalte Schlüssel.

  5. Rufen Sie die ClientID und das ClientGeheimnis ab. Weitere Informationen zum Abrufen der ClientID und des ClientGeheimnis finden Sie im Abschnitt Registrieren einer externen Anwendung des Themas CI/CD-Integrationen – Ausführen von UiPath-CLI-Aufgaben .

  6. Führen Sie die CLI-Datei exe (für Windows) oder dll (für Linux) aus.

  7. Fügen Sie die erforderlichen Anwendungs-Scopes für den Zugriff über die Test Manager-API hinzu. Weitere Informationen zu den Test Manager-Scopes finden Sie im Thema CI/CD-Integrationen – Ausführen von UiPath CLI-Aufgaben .

Verwenden des Test Managers mit CLI

Um ein Paket mit dem Test Manager zu testen, führen Sie die folgenden Schritte aus: Führen Sie die Testaufgabe mit uipcli test aus. Sie sehen eine Liste der verfügbaren Unteraufgaben. Geben Sie die erforderlichen Parameter an und führen Sie die Unteraufgabe aus.

Um Test Manager anstelle von Orchestrator zu verwenden, geben Sie den Parameter --projectKey im Befehl test run an. Die CLI leitet Ihre Tests automatisch über den Test Manager weiter.

Testbefehlsparameter
ParameterBeschreibungErforderlich
Orchestrator URL (pos. 0)Die URL der Orchestrator-InstanzJa
Orchestrator Tenant (pos. 1)Der Mandant, in dem sich das Paket oder der Testsatz befindetErforderlich für SaaS-Bereitstellungen, Optional für PaaS-Bereitstellungen
-P, --project-pathDer Pfad zur Testpaketdatei, die Sie testen möchtenNein
--projectKeyDer Projektschlüssel, angezeigt unter Test Manager > Registerkarte Dashboard > Projekte > Alle Projekte. Der Projektschlüssel ist das Präfix für alle Objektschlüssel.Ja (für Test Manager)
--testsetkeyDer Testsatzschlüssel, der unter Test Manager Test Manager > Registerkarte Testsätze > Spalte Schlüssel angezeigt wird. Stellen Sie sicher, dass der Testsatz die neueste Version der Testfälle enthält. Wenn sich der Testsatz nicht im Standardordner befindet, stellen Sie sicher, dass Sie den entsprechenden Ordnernamen davor einschließen. Verwenden Sie beispielsweise AccountingTeam\TestSet.Nein
-s, --testsetDer Name, der für den Testsatz angezeigt wird, den Sie ausführen möchten. Stellen Sie sicher, dass der Testsatz die neueste Version der Testfälle enthält. Wenn sich der Testsatz nicht im Standardordner befindet, stellen Sie sicher, dass Sie den entsprechenden Ordnernamen davor einschließen. Verwenden Sie beispielsweise AccountingTeam\TestSetNein
--outDer Typ der Ergebnisdatei (Junit oder uipath)Nein
-r, --result_pathDer Zielpfad der Datei, in der Sie die Ergebnisse speichern möchtenNein
-e, --environmentDie Umgebung, in der Sie das Paket bereitstellen möchten. Sie müssen es mit koppeln project pathErforderlich für klassische Ordner
-w, --timeoutDie Zeit (in Sekunden), die Sie auf die Ausführung des Testsatzes warten möchten. Der Standardwert ist 7200 SekundenNein
-i, --input_pathDer vollständige Pfad zu einer JSON-Eingabedatei. Weitere Informationen zur Dateistruktur finden Sie unter JSON-Format der Eingabeparameter .Erforderlich, wenn der Einstiegspunkt-Workflow Eingabeparameter hat
--attachRobotLogsFügt Roboterprotokolle für jeden ausgeführten Testfall und einen JUnit-Testbericht anNein
--repositoryUrlDie Repository-URL, unter der das Projekt versioniert wirdNein
--repositoryCommitDer Repository-Commit, aus dem das Projekt erstellt wurdeNein
--repositoryBranchDer Repository-Zweig, aus dem das Projekt erstellt wurdeNein
--repositoryTypeRepository-Typ des VCS-SystemsNein
--projectUrlURL der Automation Hub-IdeeNein
--releaseNotesVersionshinweise hinzufügenNein
--disableBuiltInNugetFeedsDeaktivieren Sie integrierte NuGet-FeedsNein
--retryCountAnzahl der Wiederholungen für fehlgeschlagene Testfälle (standardmäßig ist kein Wiederholungsversuch festgelegt)Nein
-u, --usernameDer Benutzername, der für die Authentifizierung beim Orchestrator verwendet wird. Sie müssen es mit dem entsprechenden Kennwort koppelnErforderlich für die Standardauthentifizierung
-p, --passwordDas Kennwort, das für die Authentifizierung beim Orchestrator verwendet wird. Sie müssen es mit dem entsprechenden Benutzernamen koppelnErforderlich für die Standardauthentifizierung
-t, --tokenDas OAuth2-Aktualisierungstoken, das für die Authentifizierung bei Orchestrator verwendet wird. Sie müssen es mit dem Kontonamen und der Client-ID koppelnErforderlich für tokenbasierte Authentifizierung
-a, --accountNameDer Name des Orchestrator CloudRPA-Kontos. Sie müssen es mit dem OAuth2-Aktualisierungstoken und der Client-ID koppelnErforderlich für tokenbasierte Authentifizierung
-A, --accountForAppDer Name des Orchestrator CloudRPA-Kontos (Organisationsname). Sie müssen ihn mit der Anwendungs-ID, dem Anwendungsgeheimnis und dem Anwendungs-Scope für eine externe Anwendung koppelnNein
-I, --applicationIdDie ID der externen Anwendung. Sie müssen es mit dem Anwendungskonto, dem Anwendungsgeheimnis und dem Anwendungs-Scope koppelnErforderlich für die Authentifizierung externer Anwendungen
-S, --applicationSecretDas Geheimnis externen Anwendung. Sie müssen es mit dem Anwendungskonto, der Anwendungs-ID und dem Anwendungs-Scope koppelnErforderlich für die Authentifizierung externer Anwendungen
--applicationScopeDie Liste der Anwendungs-Scopes, getrennt durch einzelne Leerzeichen. Sie müssen es mit dem Anwendungskonto, der Anwendungs-ID und dem Anwendungsgeheimnis für eine externe Anwendungen koppeln.Erforderlich für die Authentifizierung externer Anwendungen
-o, --organizationUnitDer Orchestrator-Ordner, in dem Sie die Testsätze ausführen möchtenNein
-l, --languageDie Sprache, die in der Orchestrator-Benutzeroberfläche verwendet wirdNein
--traceLevelZeigen Sie die Ablaufverfolgung der Ereignisse anNein
--identityURLDie URL Ihres Identity ServerErforderlich für PaaS- oder MSI-Bereitstellungen
Hinweis: Erforderliche Anwendungs-Scopes für den Test Manager

Wenn Sie den Test Manager verwenden, müssen Sie die folgenden Scopes in den Parameter --applicationScope aufnehmen:

TM.Projects TM.TestSets TM.TestExecutions

Zusätzlich zu Orchestrator-Scopes:

OR.Assets OR.BackgroundTasks OR.Execution OR.Folders OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read

Anwendungsbeispiele

Führen Sie einen vorhandenen Testsatz im Test Manager aus:

# Windows
uipcli test run "https://cloud.uipath.com/" "TenantName" `
  --projectKey "MyTestProject" `
  --testsetkey "MyTestSet" `
  -A "organizationName" `
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" `
  -S "********" `
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" `
  -o "FolderName" `
  --out "junit" `
  --result_path "C:\TestResults"

# Linux
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./test-results"
# Windows
uipcli test run "https://cloud.uipath.com/" "TenantName" `
  --projectKey "MyTestProject" `
  --testsetkey "MyTestSet" `
  -A "organizationName" `
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" `
  -S "********" `
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" `
  -o "FolderName" `
  --out "junit" `
  --result_path "C:\TestResults"

# Linux
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./test-results"

Erstellen und Ausführen eines vorübergehenden Testsatzes aus einem Projekt:

Vorübergehende Testsätze sind temporäre Testsätze, die während der Ausführung Ihres Projektpfads erstellt werden.

uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  -P "./MyTestProject/project.json" \
  -e "TestEnvironment" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "uipath" \
  --result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  -P "./MyTestProject/project.json" \
  -e "TestEnvironment" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "uipath" \
  --result_path "./test-results"

Führen Sie Tests mit Parameterübersteuerungen aus:

uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  -i "./test-parameters.json" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  -i "./test-parameters.json" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./test-results"

Tests mit Roboterprotokollanhang ausführen:

uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  --attachRobotLogs true \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./test-results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  --attachRobotLogs true \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./test-results"
Berichtstypen

Test Manager unterstützt zwei Ausgabeformate:

FormatBeschreibungAnwendungsfall
junitJUnit-XML-FormatCI/CD-Integration (Jenkins, Azure DevOps, GitHub Actions)
uipathNative UiPath-FormatDetaillierte Ausführungsberichte mit Test Manager-spezifischen Daten

Migration von Orchestrator-Tests

Vorher (Orchestrator-Tests):

uipcli test run "https://cloud.uipath.com/" "TenantName" \
  -s "MyTestSet" \
  -u "username" \
  -p "password" \
  -o "FolderName" \
  -P "./project.json"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  -s "MyTestSet" \
  -u "username" \
  -p "password" \
  -o "FolderName" \
  -P "./project.json"

Nachher (Test Manager):

uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./results"
uipcli test run "https://cloud.uipath.com/" "TenantName" \
  --projectKey "MyTestProject" \
  --testsetkey "MyTestSet" \
  -A "organizationName" \
  -I "becc663c-8f1e-409a-a75f-c00330d80bc8" \
  -S "********" \
  --applicationScope "OR.Folders OR.Execution TM.Projects TM.TestSets TM.TestExecutions OR.Assets OR.BackgroundTasks OR.Robots.Read OR.Machines.Read OR.Jobs OR.TestSets OR.TestSetExecutions OR.Monitoring OR.Settings.Read" \
  -o "FolderName" \
  --out "junit" \
  --result_path "./results"

Hauptunterschiede:

  1. Fügen Sie den Parameter --projectKey hinzu, um den Test Manager zu aktivieren
  2. Verwenden Sie für die Testsatzidentifizierung --testsetkey anstatt -s
  3. Test Manager erfordert OAuth-Authentifizierung (Anwendungsanmeldeinformationen)
  4. Ausgabeformat mit --out und Ziel mit --result_pathangeben
  5. Test Manager-Scopes in --applicationScopeeinschließen

Best Practices

Test Manager-Setup:

  • Erstellen Sie dedizierte Test Manager-Projekte für verschiedene Anwendungen oder Teams
  • Verwenden Sie aussagekräftige Projektschlüssel und Testsatzschlüssel für eine einfache Identifizierung
  • Testsätze nach Zweck organisieren (Regression, Smoke, Integration usw.)

Parameterverwaltung:

  • Verwenden Sie Parameterdateien (-i) für Umgebungsspezifische Konfigurationen
  • Speichern Sie vertrauliche Parameter in CI/CD-Geheimnissen und nicht in Parameterdateien
  • Dokumentieren Sie die erforderlichen Parameter in Ihren Testsatzbeschreibungen

Wiederholungslogik:

  • Verwenden Sie --retryCount für fehlerhafte Tests, die zeitweise fehlschlagen können
  • Legen Sie geeignete --timeout -Werte basierend auf der Testdauer fest
  • Überwachen Sie Wiederholungsmuster, um instabile Tests zu identifizieren und zu beheben

Berichterstellung:

  • Verwenden Sie das Format junit für die CI/CD-Pipelineintegration
  • Verwenden Sie das Format uipath für die detaillierte Analyse im Test Manager
  • Aktivieren Sie --attachRobotLogs für das Debuggen von Testfehlern

CI/CD-Integration:

  • Konfigurieren Sie die Test Manager-Authentifizierung mit sicheren Umgebungsvariablen
  • Richten Sie eine automatisierte Testausführung für Code-Commits oder Pull-Anforderungen ein
  • Archivieren Sie Testberichte als Build-Artefakte für die historische Nachverfolgung

War diese Seite hilfreich?

Verbinden

Benötigen Sie Hilfe? Support

Möchten Sie lernen? UiPath Academy

Haben Sie Fragen? UiPath-Forum

Auf dem neuesten Stand bleiben