Tosca Execution Clients verwenden

Die Tosca CI/CD-Integration ermöglicht die Integration von Tricentis Tosca in Ihre eigene CI/CD-Pipeline. Sie können sie auch mit anderen Umgebungen kombinieren, z. B. mit Umgebungen, in denen Sie Tosca nicht installiert haben.

Tricentis Tosca bietet verschiedene Möglichkeiten, Tosca CI/CD zu integrieren. Dieses Kapitel erläutert, wie Sie Ihre Tests mit Tosca Execution Clients starten. Tosca Execution Clients sind vollständig skriptbasiert, was es Ihnen ermöglicht, Ihre Tosca CI/CD-Integration genau an Ihre Bedürfnisse anzupassen.

Architektur des Tosca Execution Client

Voraussetzungen

  • Um den Tosca Execution Client zu verwenden, können Sie entweder die Tosca Distributed Execution with AOS oder die Tosca Cloud-Integration verwenden.

  • Wenn Sie den Tosca Server mit einer HTTPS-Bindung verwenden, müssen Sie über ein persönliches API-Zugriffstoken von der Tricentis User Administration verfügen. Sie benötigen die Client ID und den geheimen Clientschlüssel des Tokens, um die Tosca Execution Clients zu authentifizieren.

Ereignisse verstehen

Tosca Execution Clients funktionieren mit Ereignissen. Ein Ereignis ist eine Sammlung von Testereignissen oder ElasticExecutionGridEvents, die Sie ausführen möchten. Sie können auch Ereignisse mit nur einem Testereignis oder ElasticExecutionGridEvent haben.

Um zu definieren, wie Tosca die Ausführung handhabt, können Sie Ihrem Ereignis Testkonfigurationsparameter und Merkmale hinzufügen.

Testkonfigurationsparameter verwenden

Testkonfigurationsparameter definieren in der Regel Umgebungsinformationen, z. B. welchen Browser Sie für Ihre UI-Tests verwenden möchten. Die Parameter, die Sie in Ihrem Ereignis definieren, überschreiben die Parameter, die Sie für einzelne Tests festgelegt haben. Auf diese Weise können Sie Ihren Testdurchlauf verfeinern, ohne mehrere Tests neu konfigurieren zu müssen.

Nehmen wir an, Ihr Ereignis hat ein Testereignis, das aus zwei Ausführungslisten besteht. Sie haben Testkonfigurationsparameter für beide Ausführungslisten festgelegt: eine sollte in Chrome und die andere in Firefox ausgeführt werden. In diesem speziellen Testdurchlauf möchten Sie jedoch beide Ausführungslisten in Safari ausführen. Anstatt Ihre Ausführungslisten neu zu konfigurieren, können Sie den Browserparameter in Ihrem Ereignis einstellen. Bei der Ausführung wendet Tosca diesen Parameter anstelle der Parameter auf den Ausführungslisten an.

Merkmale verwenden

Merkmale definieren, welche Agents Ihre Tests ausführen.

Die Merkmale, die Sie in Ihrem Ereignis definieren, überschreiben das, was Sie in Ihren Testereignissen oder ElasticExecutionGridEvents definiert haben. Auf diese Weise können Sie Ihren Testdurchlauf verfeinern, ohne mehrere Tests neu konfigurieren zu müssen.

Nehmen wir an, Ihr Ereignis hat zwei Testereignisse. Eines gibt an, dass jeder ausführende Agent 2 GB Arbeitsspeicher benötigt, der andere gibt an, dass jeder ausführende Agent 4 GB benötigt. Diese Ausführung sollte jedoch nur auf Agents mit 8 GB Arbeitsspeicher ausgeführt werden. Anstatt Ihre Testereignisse neu zu konfigurieren, können Sie das notwendige Merkmal in Ihrem Ereignis einstellen. Bei der Ausführung wendet Tosca dieses Merkmal anstelle derjenigen auf den Testereignissen an.

Dem Client mitteilen, welche Tests ausgeführt werden sollen

Um zu definieren, welche Tests Sie ausführen möchten, wählen Sie eine der folgenden Optionen:

  • Listen Sie die Testereignisse/ElasticExecutionGridEvents direkt in der Befehlszeile auf.

  • Erstellen Sie eine JSON-Datei mit diesen Informationen und referenzieren Sie die Datei in der Befehlszeile. Wenn Sie Testkonfigurationsparameter (TCPs) oder Merkmale hinzufügen möchten, müssen Sie die Dateioption verwenden.

Inhalt der JSON-Datei

Je nachdem, was Sie tun möchten, können Sie den Inhalt Ihrer JSON-Datei frei kombinieren:

  • Erstellen Sie eine einfache Liste der Testereignisse/ElasticExecutionGridEvents, die Sie ausführen möchten.

  • Fügen Sie TCPs und/oder Merkmale für einige von ihnen hinzu.

  • Fügen Sie TCPs und/oder Merkmale für alle von ihnen hinzu.

Dieses Beispiel zeigt die Struktur der JSON-Datei für eine einfache Liste mit zwei Testereignissen:

Kopieren
[
    "TestEvent 1",
    "TestEvent 2"
]

Dieses Beispiel zeigt die Struktur der JSON-Datei, wenn Sie zwei Testereignisse ausführen möchten. In diesem Fall möchten Sie TCPs und Merkmale zu einem von ihnen hinzufügen:

Kopieren
[
    "TestEvent 1",    
    {
      "eventId": "TestEvent 2",
      "parameters": {
        "TCP 1 name": "TCP 1 value",
        "TCP 2 name": "TCP 2 value"
      },
      "characteristics": {
        "characteristic 1 name": "characteristic 1 value",
        "characteristic 2 name": "characteristic 2 value"
      }
    }
]

Dieses Beispiel zeigt die Struktur der JSON-Datei, wenn Sie zwei Testereignisse ausführen möchten. In diesem Fall möchten Sie TCPs und Merkmale zu beiden hinzufügen:

Kopieren
[  
    {
      "eventId": "TestEvent 1",
      "parameters": {
        "TCP 1 name": "TCP 1 value",
        "TCP 2 name": "TCP 2 value"
      },
      "characteristics": {
        "characteristic 1 name": "characteristic 1 value",
        "characteristic 2 name": "characteristic 2 value"
      }
    },
    {
      "eventId": "TestEvent 2",
      "parameters": {
        "parameter 1 name": "parameter 1 value",
        "parameter 2 name": "parameter 2 value"
      },
      "characteristics": {
        "characteristic 1 name": "characteristic 1 value",
        "characteristic 2 name": "characteristic 2 value"
      }
    }
]

Erste Schritte

Schauen Sie sich unser GitHub-Repository an, in dem Sie die folgenden Aktionen ausführen können:

  • Laden Sie den Tosca Execution Client herunter. Wir bieten den Client für Windows und Linux an.

  • Erfahren Sie, wie Sie den Rechner vorbereiten, auf dem der Client ausgeführt wird.

  • Erhalten Sie nähere Informationen zu Befehlen und verfügbaren Argumenten.

Beispiele

Diese Beispiele helfen Ihnen beim Einstieg in Ausführungen über den Tosca Execution Client.

Beispiel 1: PowerShell mit Inline-Ereignisdefinition

In diesem Beispiel verwenden Sie einen PowerShell-Befehl, der die Informationen darüber enthält, welche Testereignisse ausgeführt werden sollen:

.\tosca_execution_client.ps1 -toscaServerUrl "https://111.111.111:443" -events '["TestEvent_1", "TestEvent_2"]' -projectName "MyProjectRootName" -clientId "ABCDE" -clientSecret "1a2b3c"

Beispiel 2: PowerShell mit der Ereignisdefinition in einer Datei

In diesem Beispiel verwenden Sie eine Datei namens events.json, um zu definieren, welche Testereignisse ausgeführt werden sollen:

Dies ist der Inhalt der JSON-Datei:

[
    "MyTestEvent1",
    {
      "eventId": "MyTestEvent2",
      "parameters": {
        "Browser": "Chrome"
      },
      "characteristics": {
        "AppVersion": "15.0"
      }
    }
]

Und dies ist der PowerShell-Befehl:

.\tosca_execution_client.ps1 -toscaServerUrl "https://111.111.111:443" -eventsConfigFilePath ".\events.json" -projectName "MyProjectRootName" -clientId "ABCDE" -clientSecret "1a2b3c"

Beispiel 3: Bash mit Inline-Ereignisdefinition

In diesem Beispiel verwenden Sie einen Bash-Befehl, der die Informationen darüber enthält, welche Testereignisse ausgeführt werden sollen:

./tosca_execution_client.sh --toscaServerUrl "https://111.111.111:443" --events '["TestEvent_1", "TestEvent_2"]' --projectName "MyProjectRootName" --caCertificate "ToscaServerTest.pem" --clientId "ABCDE" --clientSecret "1a2b3c"