UiPath Documentation
uipath-cli
latest
false
Guide de l'utilisateur de UiPath CLI
Important :
Ce contenu a été traduit à l'aide d'une traduction automatique. La localisation du contenu nouvellement publié peut prendre 1 à 2 semaines avant d’être disponible.

exécutions uip tm

Syntaxe et options pour `uip tm executions`, qui répertorie, filtre et retente les exécutions de test, et inspecte les journaux de cas de test d'une exécution terminée.

uip tm executions inspecte et manipule les exécutions de test — les objets produits par uip tm testsets run. Ces verbes répertorient les exécutions d'un ensemble de tests, énumérent les journaux de cas de test d'une exécution terminée, réexécutent une exécution existante par ID et réessaient uniquement les cas ayant échoué en place.

La commande qui permet de lancer une exécution est uip tm testsets run, qui renvoie une ExecutionId. Chaque verbe de cette page prend cet ID (ou le dérive du contexte).

Synthèse​

uip tm executions list --project-key <key> [--test-set-id <uuid>] [--filter <text>] [--status <status>] [--execution-type <type>] [--execution-finished-interval <interval>] [--limit <n>] [--offset <n>]
uip tm executions list-filtered --project-key <key> [--test-set-id <uuid>] [--status <status>] [--execution-type <type>] [--execution-finished-interval <interval>] [--updated-by <userId>] [--search <text>] [--labels <labels...>] [--test-execution-ids <ids...>] [--sort-by <expr>] [--limit <n>] [--offset <n>]
uip tm executions testcaselogs list --execution-id <uuid> --project-key <key> [--only-failed] [--filter <text>] [--results <results...>] [--statuses <statuses...>] [--duration-period <period>] [--limit <n>] [--offset <n>]
uip tm executions run --project-key <key> --execution-id <uuid> --execution-type <type> [--test-case-log-ids <ids...>] [--async]
uip tm executions retry --execution-id <uuid> (--project-key <key> | --test-set-key <key>) [--execution-type <type>]
uip tm executions get-stats --execution-id <uuid> --project-key <key>
uip tm executions list --project-key <key> [--test-set-id <uuid>] [--filter <text>] [--status <status>] [--execution-type <type>] [--execution-finished-interval <interval>] [--limit <n>] [--offset <n>]
uip tm executions list-filtered --project-key <key> [--test-set-id <uuid>] [--status <status>] [--execution-type <type>] [--execution-finished-interval <interval>] [--updated-by <userId>] [--search <text>] [--labels <labels...>] [--test-execution-ids <ids...>] [--sort-by <expr>] [--limit <n>] [--offset <n>]
uip tm executions testcaselogs list --execution-id <uuid> --project-key <key> [--only-failed] [--filter <text>] [--results <results...>] [--statuses <statuses...>] [--duration-period <period>] [--limit <n>] [--offset <n>]
uip tm executions run --project-key <key> --execution-id <uuid> --execution-type <type> [--test-case-log-ids <ids...>] [--async]
uip tm executions retry --execution-id <uuid> (--project-key <key> | --test-set-key <key>) [--execution-type <type>]
uip tm executions get-stats --execution-id <uuid> --project-key <key>

Tous les verbes respectent les options globales et les codes de sortie standard.

Remarque :

--log-level n'est pas uniformément disponible sur cette page. retry, testcaselogs list, list et list-filtered l'acceptent. get-stats et run n'acceptent aucun indicateur.

liste des exécutions uip tm​

Répertoriez les exécutions associées à un ensemble de tests. --test-set-id est facultatif — omettez-le de répertorier les exécutions dans tous les ensembles de test dans le projet.

Arguments​

Aucun

Options​

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-set-id <uuid>UUID de l'ensemble de tests (le champ Id de testsets list, non TestSetKey).
--filter <text>Recherchez des exécutions par nom.
--status <status>Filtrer par statut d'exécution unique. Les valeurs acceptées proviennent de l’enum TestExecutionStatus du SDK — exécutez --help pour l’ensemble actuel.
--execution-type <type>Filtrez par un seul type d'exécution (automated, manual, mixed, none).
--execution-finished-interval <interval>Filtrez par date de fin d'exécution récente. Les valeurs acceptées proviennent de l’enum du SDK TestExecutionFinishedInterval.
--limit <n>Taille de la page. La valeur par défaut est 50.
--offset <n>Résultats à ignorer. La valeur par défaut est 0.

Exemple​

uip tm executions list \
  --project-key DEMO \
  --test-set-id a1b2c3d4-0000-0000-0000-000000000001 \
  --limit 2
uip tm executions list \
  --project-key DEMO \
  --test-set-id a1b2c3d4-0000-0000-0000-000000000001 \
  --limit 2

Format des données​

{
  "Code": "ExecutionsList",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000001",
      "Name": "Nightly Run 2025-04-15",
      "Status": "Passed"
    },
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000002",
      "Name": "Nightly Run 2025-04-14",
      "Status": "Failed"
    }
  ]
}
{
  "Code": "ExecutionsList",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000001",
      "Name": "Nightly Run 2025-04-15",
      "Status": "Passed"
    },
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000002",
      "Name": "Nightly Run 2025-04-14",
      "Status": "Failed"
    }
  ]
}

Exécutions UIP tm filtrées par liste​

Répertoriez les exécutions à l’aide de filtres avancés côté serveur. Remarque: --status et --execution-type sont des indicateurs singatifs à valeur unique. Le filtrage des plages de dates est effectué via --execution-finished-interval, et non des indicateurs de date.

Arguments​

Aucun

Options​

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-set-id <uuid>Limitez les résultats à un seul UUID d’ensemble de tests.
--status <status>Filtrer par statut d'exécution unique. Les valeurs acceptées proviennent de l’enum TestExecutionStatus du SDK — exécutez --help pour l’ensemble actuel.
--execution-type <type>Filtrez par un seul type d'exécution (automated, manual, mixed, none).
--execution-finished-interval <interval>Filtrez par date de fin d'exécution récente. Les valeurs acceptées proviennent de l’enum du SDK TestExecutionFinishedInterval.
--updated-by <userId>Filtrez par l'ID utilisateur qui a mis à jour l'exécution pour la dernière fois.
--search <text>Recherche en texte libre sur les noms d'exécution et les métadonnées.
--labels <labels...>Noms de libellés séparés par des espaces par lesquels filtrer.
--test-execution-ids <ids...>UUID d'exécution séparés par des espaces à inclure.
--sort-by <expr>Expression de tri (nom du champ, éventuellement suffixé par :asc ou :desc).
--limit <n>Taille de la page. La valeur par défaut est 50.
--offset <n>Résultats à ignorer. La valeur par défaut est 0.

Exemple​

uip tm executions list-filtered \
  --project-key DEMO \
  --status Failed \
  --execution-type automated \
  --limit 10
uip tm executions list-filtered \
  --project-key DEMO \
  --status Failed \
  --execution-type automated \
  --limit 10

Format des données​

{
  "Code": "ExecutionsListFiltered",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000002",
      "Name": "Nightly Run 2025-04-14",
      "Status": "Failed",
      "ExecutionType": "automated"
    }
  ]
}
{
  "Code": "ExecutionsListFiltered",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000002",
      "Name": "Nightly Run 2025-04-14",
      "Status": "Failed",
      "ExecutionType": "automated"
    }
  ]
}

Liste des journaux de cas de test d'exécutions uip tm​

Répertorie les journaux de cas de test produits par une seule exécution. Chaque journal est l'exécution d'un cas de test, qui porte le résultat, le statut et la synchronisation.

Arguments​

Aucun

Options​

DrapeauDescription
--execution-id <uuid>Requis. Exécution à inspecter.
--project-key <key>Requis. Propriétaire du projet.
--only-failedAfficher uniquement les journaux ayant échoué.
--filter <text>Recherchez les journaux par nom.
--results <results...>Liste de résultats séparés par des espaces par lesquels filtrer (à partir de l’enum Result du SDK, par exemple Passed, Failed).
--statuses <statuses...>Liste des statuts d’exécution séparés par des espaces par lesquels filtrer (à partir de l’enum TestCaseLogExecutionStatus du SDK).
--duration-period <period>Filtrez par date d’exécution du journal (à partir de l’enum DurationPeriod du SDK, par exemple last7Days).
--limit <n>Taille de la page. La valeur par défaut est 50.
--offset <n>Résultats à ignorer. La valeur par défaut est 0.

Exemple​

uip tm executions testcaselogs list \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO \
  --only-failed
uip tm executions testcaselogs list \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO \
  --only-failed

Format des données​

{
  "Code": "ExecutionTestCaseLogs",
  "Data": [
    {
      "Id": "c3d4e5f6-0000-0000-0000-000000000001",
      "TestCaseName": "Login flow",
      "Status": "Finished",
      "Result": "Failed"
    }
  ]
}
{
  "Code": "ExecutionTestCaseLogs",
  "Data": [
    {
      "Id": "c3d4e5f6-0000-0000-0000-000000000001",
      "TestCaseName": "Login flow",
      "Status": "Finished",
      "Result": "Failed"
    }
  ]
}

Chaque Id est un UUID du journal de cas de test. Transmettez-le à uip tm testcaselog list-assertions pour voir pourquoi un journal de cas de test a été marqué Failed.

Exécutions UiPtm​

Réexécutez une exécution existante par son ID. Ce n'est pas la même chose que pour démarrer une nouvelle exécution: elle est rejouée dans le même enregistrement d'exécution, ciblant tous les scénarios de test ou un sous-ensemble spécifique.

Remarque :

Pour démarrer une toute nouvelle exécution, utilisez uip tm testsets run à la place.

Arguments​

Aucun

Options​

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--execution-id <uuid>Requis. ID de l'exécution existante à réexécuter.
--execution-type <type>Requis. Quels cas de test exécuter (automated, manual, mixed, none).
--test-case-log-ids <ids...>UUID du journal de cas de test séparé par des espaces. Lorsqu'ils sont fournis, seuls ces journaux spécifiques sont réexécutés.
--asyncRetournez immédiatement après la mise en file d'attente sans attendre la confirmation.

Exemples​

# re-run the entire execution
uip tm executions run \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated

# re-run specific failed logs only
uip tm executions run \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --test-case-log-ids c3d4e5f6-0000-0000-0000-000000000001 c3d4e5f6-0000-0000-0000-000000000002
# re-run the entire execution
uip tm executions run \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated

# re-run specific failed logs only
uip tm executions run \
  --project-key DEMO \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --test-case-log-ids c3d4e5f6-0000-0000-0000-000000000001 c3d4e5f6-0000-0000-0000-000000000002

Format des données​

{
  "Code": "ExecutionRun",
  "Data": {
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Status": "Succeeded"
  }
}
{
  "Code": "ExecutionRun",
  "Data": {
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Status": "Succeeded"
  }
}

Status: "Succeeded" indique ici que la demande d'exécution a été acceptée, et non que les cas de test ont réussi; il est renvoyé de la même manière, que --async soit défini ou non. Vérifiez le résultat de réussite/d’échec réel avec get-stats ou wait.

Nouvelle tentative d’exécutions uip tm​

Réessayer uniquement les cas de test ayant échoué d’une exécution terminée, en place. La commande récupère les statistiques de l'exécution et refuse de se poursuivre à moins que l'exécution ne soit dans un état terminal. S'il n'y a aucun cas ayant échoué, il quitte 0 avec un message. La nouvelle tentative utilise le même ID d’exécution; il n'en crée pas de nouveau.

Arguments​

Aucun

Options​

DrapeauDescription
--execution-id <uuid>Requis. Exécution à réessayer.
--project-key <key>Propriétaire du projet. Il est obligatoire de spécifier soit ceci, soit --test-set-key.
--test-set-key <key>Clé d'ensemble de tests (par exemple, DEMO:42); la clé du projet est dérivée du préfixe.
--execution-type <type>Type d'exécution pour la nouvelle tentative: automated (par défaut), manual, mixed ou none.

Exemple​

uip tm executions retry \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO
uip tm executions retry \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO

Format des données — lorsqu'il y a des échecs de réessai​

{
  "Code": "ExecutionRetry",
  "Data": {
    "ExecutionId": "a1b2c3d4-0000-0000-0000-000000000001",
    "Status": "Running",
    "StartTime": "2025-04-15T10:30:00Z",
    "RetriedCount": 3
  }
}
{
  "Code": "ExecutionRetry",
  "Data": {
    "ExecutionId": "a1b2c3d4-0000-0000-0000-000000000001",
    "Status": "Running",
    "StartTime": "2025-04-15T10:30:00Z",
    "RetriedCount": 3
  }
}

Format des données — lorsqu'il n'y a pas d'échec de la nouvelle tentative​

{
  "Code": "ExecutionRetry",
  "Data": {
    "Message": "Execution 'a1b2c3d4-0000-0000-0000-000000000001' has no failed test cases to retry."
  }
}
{
  "Code": "ExecutionRetry",
  "Data": {
    "Message": "Execution 'a1b2c3d4-0000-0000-0000-000000000001' has no failed test cases to retry."
  }
}

Obtenir les statistiques des exécutions uip tm​

Obtenez une exécution de test par ID avec tous ses champs d'exécution plus les nombres de réussite/d'échec/non agrégés. Utilisez cette option lorsque vous avez besoin de l’enregistrement d’exécution brut avec des statistiques, par exemple pour vérifier si une exécution est terminée avant d’appeler report get, ou pour extraire des données de synchronisation et de couverture pour des rapports externes.

Arguments​

Aucun

Options​

DrapeauDescription
--execution-id <uuid>Requis. UUID de l’exécution de test. Obtenez-le à partir de uip tm testsets run ou uip tm testcases run.
--project-key <key>Requis. Clé de projet Test Manager (par exemple, DEMO).

Exemple​

uip tm executions get-stats \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO
uip tm executions get-stats \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO

Format des données​

{
  "Code": "ExecutionStats",
  "Data": {
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Name": "Nightly Run 2025-04-15",
    "Description": "Smoke + regression suite",
    "Status": "Finished",
    "ExecutionType": "automated",
    "Source": "Manual",
    "SourceDetails": "",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestSetId": "a1b2c3d4-0000-0000-0000-000000000010",
    "TestSetObjKey": "DEMO:10",
    "TestSetScheduleId": "",
    "BatchExecutionKey": "",
    "Passed": 8,
    "Failed": 2,
    "None": 0,
    "Duration": 3600000,
    "RunId": 12,
    "EnforceExecutionOrder": false,
    "EnableCoverage": false,
    "IsRunningAutomated": false,
    "HasTestsFromMultipleAutomationProjects": false,
    "RemoteControlAccess": "Disabled",
    "ExecutionStart": "2025-04-15T10:00:00Z",
    "ExecutionFinished": "2025-04-15T11:00:00Z",
    "ReportingDate": "2025-04-15T11:00:00Z",
    "FolderKey": "11111111-2222-3333-4444-555555555555",
    "Created": "2025-04-15T09:55:00Z",
    "CreatedBy": "11111111-2222-3333-4444-555555555555",
    "Updated": "2025-04-15T11:00:00Z",
    "UpdatedBy": "11111111-2222-3333-4444-555555555555",
    "AutopilotForRobotsSettings": { "Enabled": false },
    "OrderedExecutionSettings": { "Enabled": false },
    "VideoRecordingSettings": { "Enabled": false }
  }
}
{
  "Code": "ExecutionStats",
  "Data": {
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Name": "Nightly Run 2025-04-15",
    "Description": "Smoke + regression suite",
    "Status": "Finished",
    "ExecutionType": "automated",
    "Source": "Manual",
    "SourceDetails": "",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestSetId": "a1b2c3d4-0000-0000-0000-000000000010",
    "TestSetObjKey": "DEMO:10",
    "TestSetScheduleId": "",
    "BatchExecutionKey": "",
    "Passed": 8,
    "Failed": 2,
    "None": 0,
    "Duration": 3600000,
    "RunId": 12,
    "EnforceExecutionOrder": false,
    "EnableCoverage": false,
    "IsRunningAutomated": false,
    "HasTestsFromMultipleAutomationProjects": false,
    "RemoteControlAccess": "Disabled",
    "ExecutionStart": "2025-04-15T10:00:00Z",
    "ExecutionFinished": "2025-04-15T11:00:00Z",
    "ReportingDate": "2025-04-15T11:00:00Z",
    "FolderKey": "11111111-2222-3333-4444-555555555555",
    "Created": "2025-04-15T09:55:00Z",
    "CreatedBy": "11111111-2222-3333-4444-555555555555",
    "Updated": "2025-04-15T11:00:00Z",
    "UpdatedBy": "11111111-2222-3333-4444-555555555555",
    "AutopilotForRobotsSettings": { "Enabled": false },
    "OrderedExecutionSettings": { "Enabled": false },
    "VideoRecordingSettings": { "Enabled": false }
  }
}

Champs clés:

  • Passed, Failed, None — nombre agrégé de journaux de cas de test pour l'exécution.
  • Duration — durée totale d'exécution en millisecondes.
  • Status — l'état d'exécution. Avec Finished, les décomptes Passed/Failed/None sont définitifs.
  • IsRunningAutomated — true tant que les cas de test automatisés sont toujours en cours d'envoi aux robots.
Remarque :

get-stats renvoie l'enregistrement d'exécution brut avec les comptes. Pour obtenir un résumé formaté avec des messages d'échec par cas de test, utilisez uip tm report get à la place.

Codes de sortie​

Le modèle CI standard est un pipeline en trois étapes:

  1. Lancer — uip tm testsets run renvoie une ExecutionId et quitte 0
  2. Bloquer — uip tm wait interrogations jusqu'à ce que l'exécution atteigne un état terminal. Quitte 0 lorsque vous avez terminé, 2 lors du délai d'expiration, 1 lors de l'échec.
  3. Verdict — uip tm report get lit Passed / Failed décomptes. Votre script échoue explicitement la génération.
id=$(uip tm testsets run \
  --test-set-key DEMO:10 \
  --execution-type automated \
  --output-filter .Data.ExecutionId)

if ! uip tm wait --execution-id "$id" --project-key DEMO --timeout 1800; then
  code=$?
  [ "$code" -eq 2 ] && { echo "timed out" >&2; exit 2; }
  echo "wait failed ($code)" >&2; exit "$code"
fi

failed=$(uip tm report get \
  --execution-id "$id" --project-key DEMO --output-filter .Data.Failed)
[ "$failed" -gt 0 ] && { echo "$failed test(s) failed" >&2; exit 1; }
echo "all passed"
id=$(uip tm testsets run \
  --test-set-key DEMO:10 \
  --execution-type automated \
  --output-filter .Data.ExecutionId)

if ! uip tm wait --execution-id "$id" --project-key DEMO --timeout 1800; then
  code=$?
  [ "$code" -eq 2 ] && { echo "timed out" >&2; exit 2; }
  echo "wait failed ($code)" >&2; exit "$code"
fi

failed=$(uip tm report get \
  --execution-id "$id" --project-key DEMO --output-filter .Data.Failed)
[ "$failed" -gt 0 ] && { echo "$failed test(s) failed" >&2; exit 1; }
echo "all passed"

Voir également​

Cette page vous a-t-elle été utile ?

Connecter

Besoin d'aide ? Assistance

Vous souhaitez apprendre ? UiPath Academy

Vous avez des questions ? UiPath Forum

Rester à jour