UnixShell

Der UnixShell-Agent erlaubt es Ihnen, ein Shell-Skript auf einer Remote- Unix (Linux)-Maschine auszuführen. Um den UnixShell-Agenten aufzusetzen, folgen Sie bitte den nächsten Schritten.

Setup

Die folgenden Schritte benötigen grundlegendes Wissen über UnixShell. Für die angegebenen Befehle kann nicht garantiert werden, dass sie auf jeder Unix (Linux) Distribution funktionieren und müssen daher eventuell an Ihre Distribution angepasst werden.

  1. Erstellen Sie einen Automatisierungsagenten in aqua und schreiben Sie den Zugriffscode auf (auch bekannt als Agentencode).

  2. Überprüfen Sie, ob Java auf Ihrer Unix (Linux)-Maschine installiert ist, z.B. in dem Sie den folgenden Befehl ausführen:

java -version

Das Ergebnis sollte so ähnlich wie im folgenden Screenshot sein:

Wenn Java nicht auf Ihrer Maschine installiert ist, können Sie es installieren, indem Sie dem folgenden Leitfaden für Ihre Unix (Linux) Distribution folgen. Als Alternative können Sie eine Java Laufzeit-Umgebung (JRE) als *.tar.gz Paket herunterladen und dies in einen Ordner Ihrer Wahl entpacken (untar).

Die folgenden Befehle sind Beispiele für eine Ubuntu Distribution:

mkdir /usr/java cd /usr/java tar zxvf <path-to-your-java-tar.gz>

  1. Laden Sie den aqua UnixShell-Agenten auf Ihre Unix (Linux)-Maschine hoch und entpacken Sie diesen in einen Ordner Ihrer Wahl (z.B. indem Sie den Befehl unzip in Ubuntu benutzen, der über sudo apt-get install unzip installieren können).

cd /usr unzip <path-to-UnixShell-agent-zip-file>

  1. Bearbeiten Sie die Datei agent.properties (z.B. mit dem Befehl nano) und ändern Sie die Zeile agentCode (siehe Schritt 1) sowie aquaServiceUrl, sodass der Agent mit Ihrerm aqua Server kommunizieren kann.

cd <path to agent folder>

nano ./agent.properties Ein Beispiel können Sie hier sehen:

  1. Wenn Sie Java installiert haben, folgen Sie dem alternativen Vorschlag, wie in Schritt 2 beschrieben; bitte bearbeiten Sie die Datei agent.sh und passen Sie den Pfad an den Java-Befehl an. Bitte beachten Sie die Option, den Agenten im Fenstermodus laufen zu lassen. Dies kann für Unix (Linux)-Maschinen geeignet sein, die eine GUI installiert haben.

  2. Machen Sie die Datei agent.sh ausführbar.

sudo chmod +x ./agent.sh

  1. Starten Sie den Agenten, indem Sie agent.sh ausführen.

cd <Pfad zum Agenten-Ordner>

./agent.sh

Wenn eine Exception ausgegeben wird, prüfen Sie bitte noch einmal in der Datei agent.properties, ob agentCode und aquaServiceUrl richtig gesetzt sind.

In aqua sollten Sie einen grünen Indikator für Ihren Agenten sehen.

Shell-Skripte schreiben, die das Ergebnis nach aqua zurückschicken

Um ein UnixShell-Skript in ALM auszuführen, erstellen Sie einen neuen Testfall, öffnen den Schrittplaner und wählen den Tab Automatisierung. Wählen Sie den Testschritt (Klick in das leere Feld des Schritts) und fügen ein neues UnixShell-Skript über den Skript-Button hinzu.

Im Skript-Bereich des Schritts können Sie nun ein Skript einfügen, welches auf der Remote-Maschine ausgeführt werden soll. Beispiel:

##################
#!/bin/bash
# Einfaches Bash Skript
 
# Alles, was in die Konsole geschrieben wird, wird zurück an aqua geschickt
echo "Das Skript läuft"
 
# Zugriff auf die Variable VAR1
echo "$AQUA_VAR1"
 
# Dateien, die im Unterordner toAttach gespeichert wurden, werden an aqua geschickt (unten sind zwei Beispiele)
# Beispiel 1: Hängen Sie eine Datei test.txt an die Ausführung (touch erstellt eine neue Datei im Unterordner toAttach)
touch ./toAttach/test.txt
 
# Beispiel 2: Um Dateien hochzuladen, können Sie diese auch in den Unterordner kopieren
# Syntax: cp <Dateipfad> ./toAttach
cp /tmp/screnshot.png ./toAttach
 
# Geben Sie das Ergebnis der Ausführung zurück: 0 bedeutet Bestanden. Alles andere bedeutet Gescheitert
exit 0
##################

Wenn Sie mit Ihrem Skript fertig sind, können Sie Ihren Testfall speichern und ausführen. Für die Ausführung wird ein neuer Unterordner im temp-Ordner des Agenten erstellt. In diesem Unterordner wird automatisch ein weiterer Unterordner toAttach erstellt, sodass Sie Anhänge, wie im Beispiel beschrieben, hochladen können. Wenn Sie den temp-Folder nach der Ausführung öffnen wollen, setzen Sie bitte in der Datei agent.properties deleteTempFiles=false und starten Sie Ihren Agenten neu.

Einschränkungen

  • Bilder können wie Anhänge hochgeladen werden. Es ist jedoch nicht möglich, Bilder so hochzuladen, dass sie direkt im aqua Ausführungs-Log angezeigt werden.

  • Die komplette Ausgabe der Konsole wird in den letzten Schritt des Ausführungs-Logs geschrieben und nicht als mehrere Ausführungs-Logeinträge.

  • Als Konsequenz der Einschränkung 2, können Sie das Log-Level einer einzelnen Ausführung-Log-Nachricht nicht bestimmen.

Last updated