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.

cas de test uip tm

Syntaxe et options pour `uip tm testcases`, qui gère les cas de test, y compris la création, la liste, la mise à jour, la suppression, la liaison des automatisations et la gestion du journal des cas de test.

uip tm testcases gère les cas de test au sein d'un projet Test Manager: permet de créer, répertorier, mettre à jour, supprimer, lier ou dissocier une automatisation Orchestrator, inspecter les résultats historiques et ajouter ou supprimer des cas de test d'un ensemble de tests. Il fournit également testcases run — un moyen d'exécuter un ou plusieurs cas de test directement à partir d'un package Orchestrator. Cette page documente également uip tm testcaselogs list-assertions, qui lit les artefacts d'assertion associés à un seul journal de cas de test, et les verbes testcaselog start / testcaselog finish utilisés par les automatisations pour enregistrer les entrées de journal manuelles.

Un cas de test est l'unité de création. Il devient exécutable une fois qu'il est lié à un point d'entrée de package avec testcases link-automation. Un cas de test peut alors être exécuté dans le cadre d'un ensemble de test (voir Ensembles de tests), ou directement via testcases run.

Synthèse

uip tm testcases create --project-key <key> --name <name> [--description <text>] [--version <version>]
uip tm testcases list --project-key <key> [--filter <text>]
uip tm testcases list-result-history --project-key <key> --test-case-id <uuid> [--filter <text>] [--only-failed] [--results <results...>] [--statuses <statuses...>] [--duration-period <period>] [--top <number>] [--skip <number>]
uip tm testcases update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>]
uip tm testcases delete --project-key <key> --test-case-key <key> [-y]
uip tm testcases link-automation --project-key <key> --test-case-key <key> --folder-key <uuid> --package-name <name> --test-name <name>
uip tm testcases unlink-automation --project-key <key> --test-case-key <key>
uip tm testcases list-automations --project-key <key> --folder-key <uuid> [--package-name <name>]
uip tm testcases list-testsets --project-key <key> --test-case-key <key>
uip tm testcases run --project-key <key> --test-case-id <uuid...> --name <name> --execution-type <type> [--async] [--folder-key <uuid>] [--runtime-type <type>] [--robot-user-key <uuid>] [--machine-key <uuid>] [--host-machine-name <name>] [--service-user-name <name>] [--test-set-packages <json>]
uip tm testcases add --test-set-key <key> --test-case-keys <keys>
uip tm testcases remove --test-set-key <key> --test-case-keys <keys> [-y]
uip tm testcases list-steps --project-key <key> --test-case-id <uuid>

uip tm testcases steps list --project-key <key> --test-case-id <uuid>
uip tm testcases steps get --project-key <key> --step-id <uuid>
uip tm testcases steps add --project-key <key> --test-case-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>] [--order-no <n>] [--step <json>...]
uip tm testcases steps update --project-key <key> --step-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>]
uip tm testcases steps move --project-key <key> --step-id <uuid> --target-position <n>
uip tm testcases steps delete --project-key <key> --step-id <uuid> [-y]

uip tm testcaselogs list-assertions --project-key <key> --test-case-log-id <uuid>

uip tm testcaselog start --execution-id <uuid> --test-case-id <uuid> [--execution-type <type>]
uip tm testcaselog finish --test-case-log-id <uuid> [--info <text>]
uip tm testcases create --project-key <key> --name <name> [--description <text>] [--version <version>]
uip tm testcases list --project-key <key> [--filter <text>]
uip tm testcases list-result-history --project-key <key> --test-case-id <uuid> [--filter <text>] [--only-failed] [--results <results...>] [--statuses <statuses...>] [--duration-period <period>] [--top <number>] [--skip <number>]
uip tm testcases update --project-key <key> --test-case-key <key> [--name <name>] [--description <text>]
uip tm testcases delete --project-key <key> --test-case-key <key> [-y]
uip tm testcases link-automation --project-key <key> --test-case-key <key> --folder-key <uuid> --package-name <name> --test-name <name>
uip tm testcases unlink-automation --project-key <key> --test-case-key <key>
uip tm testcases list-automations --project-key <key> --folder-key <uuid> [--package-name <name>]
uip tm testcases list-testsets --project-key <key> --test-case-key <key>
uip tm testcases run --project-key <key> --test-case-id <uuid...> --name <name> --execution-type <type> [--async] [--folder-key <uuid>] [--runtime-type <type>] [--robot-user-key <uuid>] [--machine-key <uuid>] [--host-machine-name <name>] [--service-user-name <name>] [--test-set-packages <json>]
uip tm testcases add --test-set-key <key> --test-case-keys <keys>
uip tm testcases remove --test-set-key <key> --test-case-keys <keys> [-y]
uip tm testcases list-steps --project-key <key> --test-case-id <uuid>

uip tm testcases steps list --project-key <key> --test-case-id <uuid>
uip tm testcases steps get --project-key <key> --step-id <uuid>
uip tm testcases steps add --project-key <key> --test-case-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>] [--order-no <n>] [--step <json>...]
uip tm testcases steps update --project-key <key> --step-id <uuid> [--description <text>] [--expected-result <text>] [--action-type <type>] [--clipboard-data <text>]
uip tm testcases steps move --project-key <key> --step-id <uuid> --target-position <n>
uip tm testcases steps delete --project-key <key> --step-id <uuid> [-y]

uip tm testcaselogs list-assertions --project-key <key> --test-case-log-id <uuid>

uip tm testcaselog start --execution-id <uuid> --test-case-id <uuid> [--execution-type <type>]
uip tm testcaselog finish --test-case-log-id <uuid> [--info <text>]

Tous les verbes respectent les options globales et les codes de sortie standard. Chaque verbe accepte --log-level <level> (par défaut Information).

création de cas de test uip tm

Créez un nouveau cas de test dans un projet.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--name <name>Requis. Nom du cas de test.
--description <text>Description sous forme libre. La valeur par défaut est vide.
--version <version>Chaîne de version du cas de test. La valeur par défaut est 1.0.0.

Exemple

uip tm testcases create \
  --project-key DEMO \
  --name "Login smoke" \
  --description "Logs in and out"
uip tm testcases create \
  --project-key DEMO \
  --name "Login smoke" \
  --description "Logs in and out"

Format des données

{
  "Code": "TestCaseCreate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Name": "Login smoke",
    "Description": "Logs in and out",
    "Version": "1.0.0"
  }
}
{
  "Code": "TestCaseCreate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Name": "Login smoke",
    "Description": "Logs in and out",
    "Version": "1.0.0"
  }
}

TestCaseKey (l'identifiant public PROJECT:N ) est ce que vous transmettez aux autres verbes. L'interne Id est nécessaire pour list-result-history et list-testsets.

liste des cas de test uip tm

Répertoriez tous les cas de test d'un projet. La CLI page automatiquement dans les résultats.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Projet à répertorier.
--filter <text>Filtrer par nom ou par clé (recherche côté serveur).

Exemple

uip tm testcases list --project-key DEMO --filter login
uip tm testcases list --project-key DEMO --filter login

Format des données

{
  "Code": "TestCasesList",
  "Data": [
    {
      "TestCaseKey": "DEMO:1",
      "Name": "Login smoke",
      "Description": "Logs in and out"
    }
  ]
}
{
  "Code": "TestCasesList",
  "Data": [
    {
      "TestCaseKey": "DEMO:1",
      "Name": "Login smoke",
      "Description": "Logs in and out"
    }
  ]
}

uip tm testcases list-result-history

Répertoriez les journaux de cas de test historiques pour un cas de test unique. Prend le fichier --test-case-id interne (UUID): recherchez l’UUID via testcases list ou à partir d’une sortie TestCaseCreate précédente.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-case-id <uuid>Requis. UUID du cas de test interne.
--filter <text>Recherchez les journaux de cas de test par nom.
--only-failedRaccourci pour « afficher uniquement les journaux ayant échoué »; (par défaut false).
--results <results...>Les résultats séparés par des espaces à inclure. Les valeurs acceptées proviennent de l’enum du SDK Result.
--statuses <statuses...>Statuts d'exécution séparés par des espaces. Les valeurs acceptées proviennent de l’enum du SDK TestCaseLogExecutionStatus.
--duration-period <period>Filtrez par compartiment de durée. Les valeurs acceptées proviennent de l’enum du SDK DurationPeriod.
--top <number>Taille de la page. La valeur par défaut est 50.
--skip <number>Résultats à ignorer. La valeur par défaut est 0.
Remarque :

Les valeurs exactes acceptées pour --results, --statuses et --duration-period sont générées au moment de l’exécution à partir des énumérations du SDK Test Manager fournies avec la version installée de l’outil. Exécutez uip tm testcases list-result-history --help pour voir l'ensemble actuel.

Exemple

uip tm testcases list-result-history \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --only-failed
uip tm testcases list-result-history \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --only-failed

Format des données

{
  "Code": "TestCaseResultHistory",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000001",
      "Result": "Failed",
      "Status": "Finished",
      "ExecutionEnd": "2025-04-15T12:00:00Z"
    }
  ]
}
{
  "Code": "TestCaseResultHistory",
  "Data": [
    {
      "Id": "b2c3d4e5-0000-0000-0000-000000000001",
      "Result": "Failed",
      "Status": "Finished",
      "ExecutionEnd": "2025-04-15T12:00:00Z"
    }
  ]
}

mise à jour des cas de test uip tm

Renommez un cas de test ou modifiez sa description. Au moins une des propriétés --name ou --description est requise.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-case-key <key>Requis. Clé de cas de test (par exemple, DEMO:1).
--name <name>Nouveau nom.
--description <text>Nouvelle description.

Exemple

uip tm testcases update \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --name "Login smoke (2026)"
uip tm testcases update \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --name "Login smoke (2026)"

Format des données

{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Result": "Updated"
  }
}
{
  "Code": "TestCaseUpdate",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Name": "Login smoke (2026)",
    "Result": "Updated"
  }
}

suppression de cas de test uip tm

Supprimez un cas de test par sa clé.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-case-key <key>Requis. Clé de cas de test (par exemple, DEMO:1).
-y, --yesIgnorez l’invite de confirmation. Requis dans les environnements non interactifs.

Exemple

uip tm testcases delete \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --yes
uip tm testcases delete \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --yes

Format des données

{
  "Code": "TestCaseDelete",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}
{
  "Code": "TestCaseDelete",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Id": "a1b2c3d4-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}

Liez un point d'entrée de package Orchestrator à un cas de test. C’est ce qui rend le cas de test exécutable au sein d’un ensemble de tests. En interne, la commande résout le nom d'affichage du dossier à partir de --folder-key, recherche le point d'entrée du package correspondant par nom, puis stocke la liaison sur le cas de test.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-case-key <key>Requis. Cas de test à lier.
--folder-key <uuid>Requis. UUID du dossier Orchestrator (depuis uip or folders list).
--package-name <name>Requis. Identificateur de package Orchestrator (par exemple, InvoiceTests).
--test-name <name>Requis. Le nom du cas de test à l’intérieur du package (le nom du point d’entrée).

Exemple

uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest
uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

Format des données

{
  "Code": "TestCaseLinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "PackageName": "InvoiceTests",
    "PackageSource": "Shared",
    "TestName": "SmokeTest",
    "Result": "Linked"
  }
}
{
  "Code": "TestCaseLinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "PackageName": "InvoiceTests",
    "PackageSource": "Shared",
    "TestName": "SmokeTest",
    "Result": "Linked"
  }
}

Supprimez la liaison d'automatisation d'un cas de test. Après sa dissociation, le cas de test ne peut plus être exécuté tant qu’il n’est pas lié à nouveau.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-case-key <key>Requis. Cas de test à dissocier.

Exemple

uip tm testcases unlink-automation \
  --project-key DEMO \
  --test-case-key DEMO:1
uip tm testcases unlink-automation \
  --project-key DEMO \
  --test-case-key DEMO:1

Format des données

{
  "Code": "TestCaseUnlinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Result": "Unlinked"
  }
}
{
  "Code": "TestCaseUnlinkAutomation",
  "Data": {
    "TestCaseKey": "DEMO:1",
    "Result": "Unlinked"
  }
}

uip tm testcases list-automations

Répertorie les points d'entrée de test disponibles dans un dossier Orchestrator. Utilisez cette option pour découvrir les valeurs --package-name / --test-name à transmettre à link-automation.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Projet propriétaire (utilisé pour étendre la recherche).
--folder-key <uuid>Requis. UUID du dossier Orchestrator.
--package-name <name>Filtrez la liste sur un seul package (correspondance exacte insensible à la casse).

Exemple

uip tm testcases list-automations \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001
uip tm testcases list-automations \
  --project-key DEMO \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001

Format des données

{
  "Code": "TestAutomationsList",
  "Data": [
    {
      "PackageName": "InvoiceTests",
      "TestName": "SmokeTest",
      "PackageVersion": "1.0.2"
    }
  ]
}
{
  "Code": "TestAutomationsList",
  "Data": [
    {
      "PackageName": "InvoiceTests",
      "TestName": "SmokeTest",
      "PackageVersion": "1.0.2"
    }
  ]
}

uip tm cas de test liste-ensembles de test

Répertorie chaque ensemble de tests qui contient un cas de test donné.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Requis. Propriétaire du projet.
--test-case-key <key>Requis. Clé de cas de test (par exemple, DEMO:1).

Exemple

uip tm testcases list-testsets \
  --project-key DEMO \
  --test-case-key DEMO:1
uip tm testcases list-testsets \
  --project-key DEMO \
  --test-case-key DEMO:1

Format des données

{
  "Code": "TestCaseTestSetsList",
  "Data": [
    {
      "TestSetKey": "DEMO:10",
      "Name": "Smoke Suite",
      "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001"
    }
  ]
}
{
  "Code": "TestCaseTestSetsList",
  "Data": [
    {
      "TestSetKey": "DEMO:10",
      "Name": "Smoke Suite",
      "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001"
    }
  ]
}

Exécution de cas de test uip tm

Exécutez un ou plusieurs cas de test directement à partir d'un package Orchestrator sans avoir à créer d'abord un ensemble de test. testcases run démarre une exécution et renvoie l'enregistrement d'exécution. Pour plus d'informations sur cette fonctionnalité, consultez Exécution de cas de test sans ensemble de test dans la documentation de Test Manager.

Remarque :

testcases run est synchrone par défaut — il se bloque jusqu'à ce que l'enregistrement d'exécution soit confirmé. Pour revenir immédiatement après la mise en file d'attente, transmettez --async. Pour bloquer jusqu'à la fin de l'exécution, diriger le fichier Id renvoyé vers uip tm wait.

Quand utiliser testcases run vs testsets run

  • Utilisez testcases run pour exécuter des cas de test à la demande directement à partir d'un package.
  • Utilisez testsets run pour exécuter un groupe de cas de test nommé et sélectionné au fil du temps dans Test Manager.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Clé de projet Test Manager (par exemple, DEMO). Facultatif si déduit du contexte.
--test-case-id <uuid...>Requis. Un ou plusieurs UUID de cas de test à exécuter, séparés par des espaces. Obtenez les UUID de testcases list.
--execution-type <type>Requis. Type d’exécution: automated, manual, mixed ou none.
--name <name>Affichez le nom de l'exécution.
--asyncRetournez immédiatement après la mise en file d'attente, sans attendre que le serveur confirme que l'exécution a démarré. N’oubliez pas d’attendre que l’enregistrement d’exécution soit entièrement créé avant de revenir en arrière.
--folder-key <uuid>Dossier Orchestrator dans lequel exécuter. Requis lorsque les cas de test sont liés à des automatisations dans un dossier spécifique.
--runtime-type <type>Remplacement du type de runtime du robot. Valeurs acceptées: nonProduction, attended, unattended, rpaDeveloper, studioX, headless, rpaDeveloperPro, testAutomation, automationCloud, serverless, automationKit, serverlessTestAutomation, automationCloudTestAutomation, attendedStudioWeb, hosting, assistantWeb, processOrchestration, agentService, appTest, performanceTest, businessRule, caseManagement.
--robot-user-key <uuid>Clé utilisateur du robot pour la cible d'exécution.
--machine-key <uuid>Clé de machine pour la cible d'exécution.
--host-machine-name <name>Nom de la machine hôte pour la cible d'exécution.
--service-user-name <name>Nom d'utilisateur du service pour la cible d'exécution.
--test-set-packages <json>Tableau JSON des remplacements de package: [{"packageName":"Pkg","version":"1.0.0"}].

Exemples

# Simplest — run a single test case (blocks until execution record is created)
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Login smoke run"
# Simplest — run a single test case (blocks until execution record is created)
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Login smoke run"
# Run multiple test cases asynchronously, then wait for completion
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 a1b2c3d4-0000-0000-0000-000000000002 \
  --execution-type automated \
  --name "Smoke run" \
  --async \
  --output-filter Id)

uip tm wait --execution-id "$id" --project-key DEMO --timeout 900000
uip tm report get --execution-id "$id" --project-key DEMO
# Run multiple test cases asynchronously, then wait for completion
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 a1b2c3d4-0000-0000-0000-000000000002 \
  --execution-type automated \
  --name "Smoke run" \
  --async \
  --output-filter Id)

uip tm wait --execution-id "$id" --project-key DEMO --timeout 900000
uip tm report get --execution-id "$id" --project-key DEMO
# Full override — specify folder, runtime, machine, and package version
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Smoke run" \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --runtime-type unattended \
  --machine-key 33333333-4444-5555-6666-777777777777 \
  --test-set-packages '[{"packageName":"InvoiceTests","version":"1.0.2"}]'
# Full override — specify folder, runtime, machine, and package version
uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --name "Smoke run" \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --runtime-type unattended \
  --machine-key 33333333-4444-5555-6666-777777777777 \
  --test-set-packages '[{"packageName":"InvoiceTests","version":"1.0.2"}]'

Format des données

{
  "Code": "TestCaseRun",
  "Data": {
    "Id": "b2c3d4e5-0000-0000-0000-000000000001",
    "Name": "Login smoke run",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestSetId": "a1b2c3d4-0000-0000-0000-000000000010",
    "TestSetObjKey": "DEMO:10",
    "Status": "Running",
    "ExecutionType": "automated",
    "Source": "Manual",
    "RunId": 1,
    "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001",
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "EnableCoverage": false,
    "EnforceExecutionOrder": false,
    "AutopilotForRobotsSettings": { "Enabled": false },
    "OrderedExecutionSettings": { "Enabled": false },
    "VideoRecordingSettings": { "Enabled": false }
  }
}
{
  "Code": "TestCaseRun",
  "Data": {
    "Id": "b2c3d4e5-0000-0000-0000-000000000001",
    "Name": "Login smoke run",
    "ProjectId": "00000000-0000-0000-0000-000000000abc",
    "TestSetId": "a1b2c3d4-0000-0000-0000-000000000010",
    "TestSetObjKey": "DEMO:10",
    "Status": "Running",
    "ExecutionType": "automated",
    "Source": "Manual",
    "RunId": 1,
    "FolderKey": "f0f0f0f0-0000-0000-0000-000000000001",
    "ExecutionStart": "2025-04-15T10:30:00Z",
    "EnableCoverage": false,
    "EnforceExecutionOrder": false,
    "AutopilotForRobotsSettings": { "Enabled": false },
    "OrderedExecutionSettings": { "Enabled": false },
    "VideoRecordingSettings": { "Enabled": false }
  }
}

Champs clés:

  • Id — passer à uip tm wait, report get, result download, attachment download.
  • Status: "Running" — l'exécution n'a peut-être pas encore été envoyée.
  • Source: "Manual" — toutes les testcases run exécutions sont marquées comme déclenchées manuellement.

Workflow de bout en bout: package vers résultats

# 1. Discover your project key
uip tm project list --output json

# 2. Find the test case UUIDs you want to run
uip tm testcases list --project-key DEMO --filter "login" --output json

# 3. Find the folder that holds your package
uip or folders list --output json

# 4. Link the test case to the automation entry point
uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

# 5. Run the test cases directly
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --name "PR #42 smoke" \
  --output-filter Id)

# 6. Block until done (timeout in ms — 15 minutes here)
uip tm wait \
  --execution-id "$id" \
  --project-key DEMO \
  --timeout 900000

# 7. Read the result
uip tm report get --execution-id "$id" --project-key DEMO

# 8. Download JUnit XML for CI
uip tm result download \
  --execution-id "$id" \
  --project-key DEMO \
  --result-path ./junit.xml

# 9. Download screenshots and logs
uip tm attachment download \
  --execution-id "$id" \
  --project-key DEMO \
  --only-failed \
  --result-path ./attachments
# 1. Discover your project key
uip tm project list --output json

# 2. Find the test case UUIDs you want to run
uip tm testcases list --project-key DEMO --filter "login" --output json

# 3. Find the folder that holds your package
uip or folders list --output json

# 4. Link the test case to the automation entry point
uip tm testcases link-automation \
  --project-key DEMO \
  --test-case-key DEMO:1 \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --package-name InvoiceTests \
  --test-name SmokeTest

# 5. Run the test cases directly
id=$(uip tm testcases run \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --execution-type automated \
  --folder-key f0f0f0f0-0000-0000-0000-000000000001 \
  --name "PR #42 smoke" \
  --output-filter Id)

# 6. Block until done (timeout in ms — 15 minutes here)
uip tm wait \
  --execution-id "$id" \
  --project-key DEMO \
  --timeout 900000

# 7. Read the result
uip tm report get --execution-id "$id" --project-key DEMO

# 8. Download JUnit XML for CI
uip tm result download \
  --execution-id "$id" \
  --project-key DEMO \
  --result-path ./junit.xml

# 9. Download screenshots and logs
uip tm attachment download \
  --execution-id "$id" \
  --project-key DEMO \
  --only-failed \
  --result-path ./attachments

Ajouter des cas de test uip tm

Ajoutez un ou plusieurs cas de test à un ensemble de tests existant.

Arguments

Aucun

Options

DrapeauDescription
--test-set-key <key>Requis. Clé d’objet de l’ensemble de tests (par exemple, DEMO:42).
--test-case-keys <keys>Requis. Clés de cas de test séparées par des virgules à ajouter (par exemple, DEMO:1,DEMO:2).

Exemple

uip tm testcases add \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1,DEMO:2
uip tm testcases add \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1,DEMO:2

Format des données

{
  "Code": "TestCaseAdd",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Added": "DEMO:1, DEMO:2",
    "Result": "Added"
  }
}
{
  "Code": "TestCaseAdd",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Added": "DEMO:1, DEMO:2",
    "Result": "Added"
  }
}

Suppression des cas de test uip tm

Supprime un ou plusieurs cas de test d'un ensemble de test.

Arguments

Aucun

Options

DrapeauDescription
--test-set-key <key>Requis. Clé d’objet de l’ensemble de tests (par exemple, DEMO:42).
--test-case-keys <keys>Requis. Clés de cas de test séparées par des virgules à supprimer (par exemple, DEMO:1,DEMO:2).
-y, --yesIgnorez l’invite de confirmation. Requis dans les environnements non interactifs.

Exemple

uip tm testcases remove \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1,DEMO:2 \
  --yes
uip tm testcases remove \
  --test-set-key DEMO:42 \
  --test-case-keys DEMO:1,DEMO:2 \
  --yes

Format des données

{
  "Code": "TestCaseRemove",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Removed": "DEMO:1, DEMO:2",
    "Result": "Removed"
  }
}
{
  "Code": "TestCaseRemove",
  "Data": {
    "TestSetKey": "DEMO:42",
    "Removed": "DEMO:1, DEMO:2",
    "Result": "Removed"
  }
}

étapes de liste des cas de test uip tm

Répertoriez les étapes de test manuelles d’un cas de test. Il s'agit d'un alias pour testcases steps list.

Arguments

Aucun

Options

DrapeauDescription
--project-key <key>Clé de projet Test Manager (par exemple, DEMO).
--test-case-id <uuid>Requis. UUID du cas de test interne.

Exemple

uip tm testcases list-steps \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001
uip tm testcases list-steps \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001

Format des données

{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}
{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "TestCaseId": "a1b2c3d4-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}

étapes des cas de test uip tm

testcases steps est un sous-groupe qui gère les étapes manuelles individuelles d'un cas de test: répertorier, obtenir, ajouter, mettre à jour, déplacer et supprimer.

liste des étapes des cas de test uip tm

Dressez la liste des étapes d’un cas de test dans l’ordre.

Arguments

Aucun

Options
DrapeauDescription
--project-key <key>Clé de projet Test Manager.
--test-case-id <uuid>Requis. UUID du cas de test interne.
Exemple
uip tm testcases steps list \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001
uip tm testcases steps list \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001
Format des données
{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}
{
  "Code": "TestCaseStepsList",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "ActionType": "Manual",
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}

étapes des cas de test uip tm - Obtenir

Obtenez une seule étape par son UUID.

Arguments

Aucun

Options
DrapeauDescription
--project-key <key>Clé de projet Test Manager.
--step-id <uuid>Requis. UUID de l’étape de test (à partir de steps list).
Exemple
uip tm testcases steps get \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001
uip tm testcases steps get \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001
Format des données
{
  "Code": "TestStepGet",
  "Data": {
    "Id": "d4e5f6a7-0000-0000-0000-000000000001",
    "OrderNo": 0,
    "ActionType": "Manual",
    "Description": "Open login page",
    "ExpectedResult": "Login form is displayed"
  }
}
{
  "Code": "TestStepGet",
  "Data": {
    "Id": "d4e5f6a7-0000-0000-0000-000000000001",
    "OrderNo": 0,
    "ActionType": "Manual",
    "Description": "Open login page",
    "ExpectedResult": "Login form is displayed"
  }
}

Étapes d'ajout de cas de test uip tm

Ajoutez une ou plusieurs étapes à un cas de test. Utilisez des indicateurs intégrés pour une seule étape ou --step <json> (répétable) pour plusieurs étapes à la fois.

Arguments

Aucun

Options
DrapeauDescription
--project-key <key>Clé de projet Test Manager.
--test-case-id <uuid>Requis. Cas de test auquel ajouter des étapes.
--description <text>Description de l'étape (mode étape unique).
--expected-result <text>Résultat attendu (mode à une seule étape).
--action-type <type>Type d'action d'étape (mode étape unique).
--clipboard-data <text>Données de test à copier pour l'étape (mode étape unique).
--order-no <n>Position d'insertion basée sur 0; omettre d'ajouter à la fin (mode à une seule étape);
--step <json>Une étape en tant qu'objet JSON ({"description":"...","expectedResult":"..."}). Répétez l'opération pour ajouter plusieurs étapes.
Exemples
# single step
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --description "Open login page" \
  --expected-result "Login form is displayed"

# multiple steps
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --step '{"description":"Open login page","expectedResult":"Login form is shown"}' \
  --step '{"description":"Enter credentials","clipboardData":"user@acme.com"}' \
  --step '{"description":"Click submit","expectedResult":"Dashboard loads"}'
# single step
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --description "Open login page" \
  --expected-result "Login form is displayed"

# multiple steps
uip tm testcases steps add \
  --project-key DEMO \
  --test-case-id a1b2c3d4-0000-0000-0000-000000000001 \
  --step '{"description":"Open login page","expectedResult":"Login form is shown"}' \
  --step '{"description":"Enter credentials","clipboardData":"user@acme.com"}' \
  --step '{"description":"Click submit","expectedResult":"Dashboard loads"}'
Format des données
{
  "Code": "TestStepAdd",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}
{
  "Code": "TestStepAdd",
  "Data": [
    {
      "Id": "d4e5f6a7-0000-0000-0000-000000000001",
      "OrderNo": 0,
      "Description": "Open login page",
      "ExpectedResult": "Login form is displayed"
    }
  ]
}

mise à jour des étapes des cas de test uip tm

Mettez à jour la description d'une étape, le résultat attendu, le type d'action ou les données du presse-papiers. Au moins un de ces champs doit être fourni.

Arguments

Aucun

Options
DrapeauDescription
--project-key <key>Clé de projet Test Manager.
--step-id <uuid>Requis. UUID de l’étape de test.
--description <text>Nouvelle description.
--expected-result <text>Nouveau résultat attendu.
--action-type <type>Nouveau type d'action.
--clipboard-data <text>Nouvelles données du presse-papiers.
Exemple
uip tm testcases steps update \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --expected-result "Dashboard is shown"
uip tm testcases steps update \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --expected-result "Dashboard is shown"
Format des données
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}
{
  "Code": "TestStepUpdate",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Updated"
  }
}

Étapes du cas de test uip tm - Déplacement

Déplacez une étape vers une nouvelle position dans l'ordre des cas de test.

Arguments

Aucun

Options
DrapeauDescription
--project-key <key>Clé de projet Test Manager.
--step-id <uuid>Requis. UUID de l’étape de test.
--target-position <n>Requis. Nouvelle position basée sur 0 (0 = première). Correspond au champ OrderNo de steps list.
Exemple
uip tm testcases steps move \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --target-position 2
uip tm testcases steps move \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --target-position 2
Format des données
{
  "Code": "TestStepMove",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "TargetPosition": 2,
    "Result": "Moved"
  }
}
{
  "Code": "TestStepMove",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "TargetPosition": 2,
    "Result": "Moved"
  }
}

étapes de suppression des cas de test uip tm

Supprimez une étape d'un cas de test. Ceci est permanent.

Arguments

Aucun

Options
DrapeauDescription
--project-key <key>Clé de projet Test Manager.
--step-id <uuid>Requis. UUID de l’étape de test.
-y, --yesRequis. Confirmez cette opération irréversible.
Exemple
uip tm testcases steps delete \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --yes
uip tm testcases steps delete \
  --project-key DEMO \
  --step-id d4e5f6a7-0000-0000-0000-000000000001 \
  --yes
Format des données
{
  "Code": "TestStepDelete",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}
{
  "Code": "TestStepDelete",
  "Data": {
    "StepId": "d4e5f6a7-0000-0000-0000-000000000001",
    "Result": "Deleted"
  }
}

uip tm - journaux de cas de test - assertions

Répertorie les assertions enregistrées pour un journal de cas de test unique. Chaque exécution d’un cas de test produit exactement un journal de cas de test; ses assertions correspondent aux vérifications individuelles enregistrées par l'automatisation. Ce verbe fait apparaître la raison pour laquelle un journal de cas de test est marqué Failed.

Ce verbe est enregistré sous testcaselogs, non testcases, mais il est documenté ici car il lit les artefacts d'assertion pour le journal d'un cas de test.

Arguments

Aucun

Options

DrapeauDescription
--test-case-log-id <uuid>Requis. UUID du journal de cas de test. Obtenez-le de uip tm executions testcaselogs list ou uip tm testcases list-result-history.
--project-key <key>Requis. Propriétaire du projet.

Exemple

uip tm testcaselogs list-assertions \
  --test-case-log-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO
uip tm testcaselogs list-assertions \
  --test-case-log-id a1b2c3d4-0000-0000-0000-000000000001 \
  --project-key DEMO

Format des données

{
  "Code": "TestCaseLogAssertions",
  "Data": [
    { "Message": "Title contains 'Welcome'", "Succeeded": true },
    { "Message": "Button 'Login' visible", "Succeeded": false }
  ]
}
{
  "Code": "TestCaseLogAssertions",
  "Data": [
    { "Message": "Title contains 'Welcome'", "Succeeded": true },
    { "Message": "Button 'Login' visible", "Succeeded": false }
  ]
}

Début du journal de cas de test uip tm

Signalez le début d’une entrée de journal de cas de test manuelle pour un cas de test spécifique au sein d’une exécution.

Arguments

Aucun

Options

DrapeauDescription
--execution-id <uuid>Requis. L'exécution dans laquelle le cas de test s'exécute.
--test-case-id <uuid>Requis. UUID interne du cas de test en cours de journalisation.
--execution-type <type>Type d’exécution pour l’entrée de journal (par exemple, automated, manual). Facultatif.

Exemple

uip tm testcaselog start \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001
uip tm testcaselog start \
  --execution-id a1b2c3d4-0000-0000-0000-000000000001 \
  --test-case-id b2c3d4e5-0000-0000-0000-000000000001

Format des données

{
  "Code": "TestCaseLogStart",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Status": "InProgress"
  }
}
{
  "Code": "TestCaseLogStart",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Status": "InProgress"
  }
}

fin du journal de cas de test uip tm

Signalez la fin d’une entrée de journal de cas de test démarrée manuellement.

Arguments

Aucun

Options

DrapeauDescription
--test-case-log-id <uuid>Requis. L'ID de journal renvoyé par testcaselog start.
--info <text>Erreur ou message d’information facultatif à joindre à l’entrée de journal.

Exemple

uip tm testcaselog finish \
  --test-case-log-id c3d4e5f6-0000-0000-0000-000000000001 \
  --info "Login button not found on page"
uip tm testcaselog finish \
  --test-case-log-id c3d4e5f6-0000-0000-0000-000000000001 \
  --info "Login button not found on page"

Format des données

{
  "Code": "TestCaseLogFinish",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Result": "Finished"
  }
}
{
  "Code": "TestCaseLogFinish",
  "Data": {
    "TestCaseLogId": "c3d4e5f6-0000-0000-0000-000000000001",
    "Result": "Finished"
  }
}
  • projet — étendue qui possède chaque cas de test.
  • ensembles de tests — regroupe les cas de test dans une suite exécutable.
  • exécutions - vues au niveau de l'exécution des journaux de cas de test.
  • rapport — résumé d'une exécution, avec des incidents échoués et un texte d'assertion.

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