Tosca CI Client konfigurieren

Dieses Kapitel beschreibt ein Legacy-Feature, das Tricentis in naher Zukunft einstellen will. Nähere Informationen zum Einstellungsplan und Zeitablauf finden Sie in diesem Artikel der Tricentis Knowledge Base.

Um mehr über Alternativen zu erfahren, lesen Sie dieses Kapitel.

In diesem Kapitel erfahren Sie, wie Sie das Verhalten des Tosca Continuous Integration Client (Tosca CI Client) konfigurieren, wenn Sie die Tosca Distributed Execution von einem Windows-Betriebssystem starten möchten.

Wenn Sie von einem Nicht-Windows-Betriebssystem aus starten möchten, siehe Kapitel "Tosca CI Client für Nicht-Windows-Betriebssysteme konfigurieren".

Workflow

Um den Tosca CI Client zu konfigurieren, führen Sie diese Schritte aus:

  1. Wenn Sie den Tosca Server mit einer HTTPS-Bindung verwenden, bereiten Sie die Konfiguration des Tosca CI Client vor.

    Erstellen Sie dazu ein API-Zugriffstoken in der Tricentis User Administration. Sie benötigen die Client ID und den geheimen Clientschlüssel des Tokens, um den Tosca CI Client zu authentifizieren.

  2. Nehmen Sie die obligatorischen Konfigurationen vor:

    • Definieren Sie den Endpunkt des Tosca Distribution Server.

    • Wenn Sie den Tosca Server mit einer HTTPS-Bindung verwenden, richten Sie den Tosca CI Client für die Kommunikation über HTTPS ein und authentifizieren Sie ihn.

    • Wenn Sie die Distributed Execution with AOS verwenden, nehmen Sie die erforderlichen AOS-Konfigurationen vor.

  3. Nehmen Sie optionale Konfigurationen vor, die das Verhalten des Tosca CI Client definieren. Ändern Sie zum Beispiel die Timeout-Einstellungen oder das Abfrageintervall.

Obligatorische Konfigurationen für den Tosca CI Client

Um Ihre Tests auszuführen, benötigt der Tosca CI Client einige obligatorische Konfigurationen:

  • Der Endpunkt des Tosca Distribution Server (DEX Server).

  • HTTPS-Konfiguration und -Authentifizierung, wenn Sie den Tosca Server mit einer HTTPS-Bindung verwenden.

  • Informationen zum AOS-Arbeitsbereich, wenn Sie die Distributed Execution with AOS verwenden.

Um diese Konfigurationen durchzuführen, führen Sie diese Schritte aus:

  1. Öffnen Sie die Datei ToscaCIClient.exe.config. Bei einer Standardinstallation befindet sich diese Datei unter %COMMANDER_HOME%\ToscaCI\Client.

  2. Definieren Sie die Adresse des DEX Server:

    • Gehen Sie zur Einstellung endpoint im Abschnitt system.serviceModel.

    • Definieren Sie im Attribut address den Endpunkt:

      http(s)://<IP-Adresse oder Hostname des Tosca Server Gateway>:<Gateway-Port>/DistributionServerService/ManagerService.svc

<system.serviceModel>
    [...]
    <client>
        [...]
        <endpoint address="https://192.168.0.1:443/DistributionServerService/ManagerService.svc"
                binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IManagerService"
                contract="ManagerService.IManagerService" name="BasicHttpBinding_IManagerService" />
    </client>
  1. Wenn Sie den Tosca Server mit einer HTTPS-Bindung verwenden, konfigurieren Sie den Tosca CI Client für HTTPS:

    • Bleiben Sie im Abschnitt system.serviceModel.

    • Ändern Sie im Element, dessen binding name "BasicHttpBinding_IManagerService" lautet, den Wert von security mode auf Transport.

<system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpBinding_IRemoteExecutionService" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="Infinite" sendTimeout="Infinite" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" messageEncoding="Text">
          <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
          <security mode="None" />
        </binding>
        <binding name="BasicHttpBinding_IManagerService" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="Infinite" sendTimeout="Infinite" allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="2147483647" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" textEncoding="utf-8" transferMode="Buffered" useDefaultWebProxy="true" messageEncoding="Text">
          <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
          <security mode="Transport" />
        </binding>
      </basicHttpBinding>
    </bindings>
    [...]
  </system.serviceModel>
  1. Wenn Sie den Tosca Server mit einer HTTPS-Bindung verwenden, müssen Sie den Tosca CI Client auch authentifizieren:

    • Gehen Sie zum Abschnitt TOSCAContinuousIntegration.TOSCACIClient.Properties.Settings.

    • Geben Sie in der Einstellung DiscoveryServiceEndpoint den Authentifizierungsendpunkt ein:

      http(s)://<IP-Adresse oder Hostname des Tosca Server Gateway>:<Gateway-Port>

    • Geben Sie in der Einstellung ClientId die Client ID Ihres API-Zugriffstokens der Tricentis User Administration ein.

    • Geben Sie in der Einstellung ClientSecret den geheimen Clientschlüssel des Tokens ein.

<setting name="DiscoveryServiceEndpoint" serializeAs="String">
    <value>https://111.111.111.0:443</value>
</setting>
<setting name="ClientId" serializeAs="String">
    <value>MyClientId12345</value>
</setting>
<setting name="ClientSecret" serializeAs="String">
    <value>1a2B3c4D5e_6F</value>
</setting>
  1. Wenn Sie die Distributed Execution with AOS verwenden, richten Sie den Tosca CI Client für AOS ein:

<setting name="WorkspaceRootName" serializeAs="String">
    <value>DEX_Work</value>
</setting>
  1. Wählen Sie eine der folgenden Optionen:

    • Nehmen Sie zusätzliche, optionale Konfigurationen vor.

    • Speichern und schließen Sie die Datei.

Optionale Konfigurationen für den Tosca CI Client

Sie können zusätzliche Konfigurationen vornehmen, die das Verhalten des Tosca CI Client definieren. Ändern Sie zum Beispiel die Timeout-Einstellungen oder das Abfrageintervall.

Um optionale Konfigurationen festzulegen, führen Sie diese Schritte aus:

  1. Öffnen Sie die Datei ToscaCIClient.exe.config. Bei einer Standardinstallation befindet sich diese Datei unter %COMMANDER_HOME%\ToscaCI\Client.

  2. Ändern Sie die folgenden Einstellungen:

Einstellung

Beschreibung

TimestampFormat

Definiert das Format des Zeitstempels im Ausführungsergebnis.

Der Standardwert dieser Einstellung ist yyMMdd HHmm.

Sie können diese Einstellung mit benutzerdefinierten Zeichenfolgen anpassen. Informationen zur möglichen Syntax finden Sie hier: https://docs.microsoft.com/en-us/dotnet/standard/base-types/standard-date-and-time-format-strings.

PathToResultFile

Definiert den Pfad zur Datei result.xml auf dem Tosca CI Client. Der Build-Server importiert diese Datei, um die Testergebnisse anzuzeigen.

Sie können diese Einstellung mit dem Aufrufparameter -r überschreiben, wenn Sie den angegebenen Pfad für die Ausführung eines bestimmten Tests nicht verwenden möchten.

ConsiderExecutionResult

Wenn Ihr Build-Server ExitCodes benötigt, die angeben, ob Tests erfolgreich waren oder nicht, setzen Sie den Wert dieser Einstellung unter Value auf True. Der ExitCode informiert den Build-Server darüber, ob die Tests erfolgreich waren oder nicht, bzw. ob es keine Ergebnisse für einen oder mehrere Ausführungseinträge gibt:

  • Erfolgreich: ExitCode 0

  • Fehlgeschlagen: ExitCode -1

  • Kein Ergebnis für Ausführungseinträge: ExitCode -2. Dieser Code gilt, wenn ReportIntermediateResults auf True gesetzt ist.

Der Standardwert WorkspaceRootName ist False.

ResultType

Definiert die Struktur der Testergebnisse.

Wenn ReportIntermediateResults True ist, ist nur der Ergebnistyp Junit möglich.

Der Standardwert ist junit.

CiClientTimeout

Zeit in Millisekunden, die der Tosca CI Client auf eine Response des Tosca Distribution Server wartet.

Wenn der Tosca CI Client innerhalb dieses Zeitraums keine Antwort vom Tosca Distribution Server erhält, belässt er das Testereignis in der Warteschlange, bis Sie es im Tosca Distributed Execution Monitor abbrechen.

Das im CiClientTimeout definierte Zeitintervall muss höher sein als das des PollingInterval. Ist dies nicht der Fall, verwendet das System automatisch das im PollingInterval definierte Zeitintervall.

Der Standardwert ist 36000000.

ReportIntermediateResults

Wenn Sie nach der Ausführung jedes Ausführungseintrags zusätzlich zu den zusammenfassenden Ergebnissen am Ende des Testdurchlaufs Ergebnisse erhalten möchten, setzen Sie den Wert dieser Einstellung auf True.

Der Standardwert ist False.

PollingInterval

Das Intervall in Millisekunden, in dem der Tosca CI Client ein Ergebnis vom Tosca Distribution Server verlangt.

Der Standardwert ist 60000.

AOServiceRequestTimeout

Zeit in Millisekunden, die der Tosca CI Client auf eine Response des AOS wartet. Diese Konfiguration ist optional und nur anwendbar, wenn Sie die Distributed Execution with AOS verwenden.

Der Tosca CI Client versucht, die Ausführung zu starten, indem er die Liste der Testereignisse an AOS sendet. Wenn er innerhalb dieses Zeitfensters keine Antwort vom AOS erhält, beginnt er, den Tosca Distribution Server nach Ausführungsergebnissen abzufragen. Wenn der Tosca Distribution Server vom AOS keine Informationen über diese Ausführung erhalten hat, schlägt die Abfrage fehl und der Tosca CI Client wird beendet. Wenn dieser Fehler auftritt, können Sie versuchen, den Timeout-Zeitraum zu erhöhen.

Der Standardwert ist 300000.

  1. Speichern und schließen Sie die Datei.

Beispiel: Neue Werte für CiClientTimeout und PollingInterval setzen

Im folgenden Beispiel haben Sie die Werte für CiClientTimeout und PollingInterval erhöht:

<userSettings>
    [...]
    <TOSCAContinuousIntegration.TOSCACIClient.Properties.Settings>
        [...]
        <setting name="CiClientTimeout" serializeAs="String">
            <value>40000000</value>
        </setting>
        [...]
        <setting name="PollingInterval" serializeAs="String">
            <value>350000</value>
        </setting>
    </TOSCAContinuousIntegration.TOSCACIClient.Properties.Settings>
</userSettings>