EEM-Projekt mit EEM-Timer-Aufträgen

Funktion

Dieses Plugin dient der spezifischen Überprüfung von End-to-End-Tests (E2E) auf Basis von SikuliX und SmartBear TestComplete. Es führt ein Projekt auf einem entfernten Windows-Host über dessen WinAgent aus, wartet auf den Abschluss der Ausführung, ruft anschließend die generierten Protokolldateien, Screenshots oder Videos ab und zeigt diese auf einer Übersichtsseite an.

Alarmierung

Laufzeit, Antwortcode, Ergebniscode (EEM-Timer), bekannter Fehler (EEM-Timer)

Allgemeine Informationen zum EEM-Projekt

Das EEM-Projekt-Plugin ist für den Einsatz auf einem Gerät vom Typ PC (EEM-Roboter) konzipiert. EEM-Geräte (Enduser Experience Monitoring) sind Roboter-Geräte, die End-to-End-Tests von Software und Diensten mithilfe von SKOOR Robot – einem auf dem Open-Source-Projekt SikuliX basierenden Produkt – oder den Testtools TestComplete / TestExecute von SmartBear durchführen. Das Plugin wurde entwickelt, um die Konfiguration und Verwaltung von End-to-End-Testläufen über einen SKOOR Engine-Server zu optimieren. Die Tests können so programmiert werden, dass sie funktionale End-to-End-Tests von Websites, Webdiensten, UI-Anwendungen oder mobilen Apps durchführen. 

Die Kommunikation zwischen dem EEM-Roboter und der SKOOR Engine erfolgt über die SKOOR Engine WinAgent-Anwendung. Der WinAgent muss so konfiguriert werden, dass die Ausführung von SikuliX- oder TestComplete-/TestExecute-Binärdateien sowie das Abrufen der generierten Ausgabedateien möglich ist. Außerdem muss der WinAgent als Anwendung und nicht als Dienst ausgeführt werden.

Das EEM-Projekt-Plugin besteht aus der EEM-Projektkonfiguration selbst und einer beliebigen Anzahl von zugehörigen EEM-Timer-Jobs, die darunter hinzugefügt werden können.

EEM-Projektwerte und Alarm Limits

Wert / Alarm Limit

Beschreibung

Laufzeit

Die Laufzeit des gesamten EEM-Projekts

Antwortcode

  0 = OK –
 1 = Allgemeiner Fehler
  1 = Testergebnisse enthalten Warnungen
  2 = Testergebnisse enthalten Fehler
  3 = Der Test kann nicht ausgeführt
werden 18 = TestComplete/TestExecute
nicht gestartet 11 = Parameter fehlt
12 = Falscher Parameter
13 = Projekt nicht gefunden
14 = Ausführbare Datei nicht gefunden
15 = Keine Berechtigung
16 = Zeitüberschreitung
bei der Ausführung 20 = Ausführung wurde abgebrochen
17 = Test fehlgeschlagen
19 = Unbekannte Antwort

Fehlercode

Allgemeiner Job-Fehlercode (siehe Abschnitt „Job-Fehlercodes“)

Wenn ein EEM-Projekt-Job mit einem Zeitplan verknüpft ist (der aktive und inaktive Zeiten für die Jobausführung definiert), funktioniert die Schaltfläche „Jetzt prüfen“ während der im Zeitplan konfigurierten inaktiven Zeit nicht.

EEM-Robot-Gerät

Stellen Sie vor dem Erstellen eines EEM-Projekt-Jobs sicher, dass das Gerät, zu dem der Job gehört, als Gerät vom Typ „PC (EEM-Roboter)“ konfiguriert ist. Beim Erstellen eines solchen Geräts wird der folgende Bildschirm mit den Konfigurationsoptionen angezeigt:

Der Abschnitt „EEM-Projekt-Infos“ dient als Referenz für die konfigurierten Standardwerte der Eigenschaften, die zur Ausführung eines EEM-Projekts verwendet werden. Abgesehen davon ist ein PC-Gerät (EEM-Robot) funktional identisch mit anderen Gerätetypen. Überschreiben Sie die Eigenschaften, indem Sie eine oder mehrere Eigenschaften im Abschnitt „Eigenschaften“ manuell festlegen.

Geräteeigenschaften

Auf Geräteebene konfigurierte Eigenschaften wirken sich auf alle EEM-Projekt-Jobs dieses Geräts aus. Bei Bedarf können einige davon in den Mess-Jobs überschrieben werden

Eigenschaftsname

Beschreibung

Agent-Benutzername

Muss festgelegt werden, wenn in den WinAgent-Einstellungen auf dem EEM-Host ein Benutzername und ein Passwort konfiguriert wurden

Agent-Passwort

Muss festgelegt werden, wenn in den WinAgent-Einstellungen auf dem EEM-Host ein Benutzername und ein Passwort konfiguriert wurden

Sichere Verbindung zum Agenten

Muss festgelegt werden, wenn die entsprechende Einstellung (SSL-Verschlüsselung für die Verbindung) in den WinAgent-Einstellungen auf dem EEM-Host konfiguriert wurde

EEM-Binärpfad

Muss festgelegt werden, falls er vom Standardwert abweicht. Dieser muss entsprechend der Eigenschaft „EEM-Ausführungsmodus“ und natürlich den Pfaden zu den Softwarekomponenten festgelegt werden

EEM-Ausführungsmodus

Bei Laufzeitgeräten, die zur Durchführung von Messungen verwendet werden, wählen Sie „SikuliX“ oder „TestExecute“

Für Geräte, die zur Entwicklung von EEM-Projekten verwendet werden, wählen Sie „SikuliX Development“ oder „TestComplete“

EEM-MHT-Protokolle abrufen (nur TestExecute)

Wenn diese Option aktiviert ist (Standardeinstellung), versucht die SKOOR Engine, die auf dem EEM-Roboter erstellten Protokolle zur Projektlaufzusammenfassung zu übertragen. Diese werden für jeden Lauf im MHT-Format (MHTML) erstellt und können ausschließlich mit dem Internet Explorer angezeigt werden. MHT-Protokolldateien können recht groß sein, manchmal mehrere MB, insbesondere wenn der Projektlauf viele Fehler erzeugt hat. Deaktivieren Sie diese Option, wenn auf der SKOOR Engine zu wenig Speicherplatz für die Protokollspeicherung vorhanden ist oder wenn die Netzwerkbandbreite zwischen der SKOOR Engine und dem EEM-Roboter für die Übertragung großer Dateien zu gering ist

Stammverzeichnis für EEM-Protokolle

Dies ist das Stammverzeichnis, in dem die SikuliX- oder MHT-Protokolle auf dem EEM-Roboter gespeichert werden

EEM-Projekt-Stammverzeichnis

Dies ist das Stammverzeichnis, in dem die SikuliX-/TestComplete-Projekte auf dem EEM-Roboter gespeichert werden.

EEM-Fernzugriff

Normalerweise werden die Projektläufe auf der Konsole des EEM-Roboters ausgeführt (der Bildschirm, den man sehen würde, wenn ein physischer Monitor angeschlossen wäre). In diesem Fall werden VNC oder andere Mittel wie Teamviewer als Fernzugriffsmethode verwendet. Dabei bleibt der Konsolenbildschirm des Roboters jedoch während der Ausführung der Tests sichtbar.

Wenn Sicherheitsbedenken bestehen, können die Tests so konfiguriert werden, dass sie innerhalb einer Windows-Remotedesktop-Sitzung (RDP) ausgeführt werden. Dadurch kann der Konsolenbildschirm gesperrt werden. Die Verbindung der Benutzer wird unterbrochen, wenn Tests ausgeführt werden.

Wenn eine Authentifizierung auf Netzwerkebene erforderlich ist, muss das Gerät mit FreeRDP konfiguriert werden

RDP-Domäne

Active-Directory-Domäne, die für die RDP-Anmeldung verwendet wird

RDP-Benutzername/Passwort

Active-Directory-Benutzername und -Passwort für die RDP-Anmeldung

RDP-Auflösung

Bildschirmauflösung, die für EEM-Messungen verwendet wird. Dies ist besonders wichtig für bildbasierte Messungen (SKOOR Robot)

RDP-Optionen

Für die RDP-Sitzung können einige Optionen konfiguriert werden. Weitere Informationen finden Sie im Abschnitt „EEM-Projektinformationen“ des Geräteobjekts

RDP-Abmeldung

Um zwischen den Messungen Zeit zu sparen, wird die RDP-Sitzung nach Ausführung eines Projekt-Jobs nicht beendet. Sollte aus irgendeinem Grund eine Abmeldung erforderlich sein, kann diese Eigenschaft entsprechend eingestellt werden

EEM-Projekt-Jobs

Informationen zur Konfiguration von EEM-Projekt-Jobs finden Sie auf den jeweiligen Unterseiten für SKOOR Robot und SmartBear.

EEM-Projektergebnisse

Die Messergebnisse werden im EEM-Projekt und in den Timer-Jobs sowie im EEM-Ergebnisbrowser angezeigt.

EEM-Projekt-Warteschlange

Der SKOOR Engine Collector plant die EEM-Projekt-Jobs automatisch entsprechend ihres festgelegten Ausführungsintervalls. Das bedeutet, dass jeder EEM-Projekt-Job sein eigenes Ausführungsintervall haben kann und der Scheduler sicherstellt, dass dieses Intervall eingehalten wird. Befinden sich mehrere EEM-Projekt-Jobs auf einem EEM-Gerät und entscheidet der Scheduler, dass es Zeit für die Ausführung eines EEM-Projekt-Jobs ist, wird dieser in die Warteschlange gestellt, falls gerade bereits einer der anderen EEM-Projekt-Jobs ausgeführt wird. Um diese Warteschlange anzuzeigen, müssen die folgenden Voraussetzungen erfüllt sein:

  • Auf dem EEM-Gerät muss in der Konfiguration ein Standard-Kollektor definiert sein

  • Auf dem EEM-Gerät muss mindestens ein EEM-Projekt-Job vorhanden sein

Sind die oben genannten Kriterien erfüllt, können die Warteschlange und der Status des aktuell ausgeführten Projekts durch Auswahl von „Details anzeigen“ auf dem EEM-Gerät eingesehen werden:

Verteilung von EEM-Projekten

Die Entwicklung von Testprojekten erfordert die Installation der TestComplete- oder SikuliX-Software. Die Entwicklung erfolgt in der Regel auf anderen Hosts als denen, auf denen die Tests tatsächlich ausgeführt werden. Auf den Hosts, auf denen die Tests ausgeführt werden, muss lediglich die TestExecute-Laufzeitsoftware installiert sein (nur SmartBear). Zur Verteilung der entwickelten Tests bietet die SKOOR Engine einen Mechanismus, bei dem eine ZIP-Datei des aktuellen Projektverzeichnisses auf dem Entwicklungshost erstellt, in die SKOOR Engine hochgeladen und anschließend an die EEM-Roboter verteilt wird. Die SikuliX-Ausführungsdatei wird auf dieselbe Weise übertragen. Befolgen Sie dazu die folgenden Anweisungen:

  • Stellen Sie die Eigenschaft „EEM-Ausführungsmodus“ auf dem Entwicklungshost-Gerät auf „SikuliX Development“ oder „TestComplete“ ein

  • Stellen Sie sicher, dass diese Eigenschaft auf allen EEM-Roboter-Hostgeräten hingegen auf „TestExecute“ oder „SikuliX“ gesetzt ist

  • Entwickeln Sie auf dem Entwicklungshost ein neues EEM-Projekt oder bearbeiten Sie ein bestehendes. Speichern Sie das Projekt und schließen Sie die entsprechende IDE.

  • Wählen Sie unterhalb des Entwicklungsgeräts in der Benutzeroberfläche der SKOOR Engine für das EEM-Projekt, das an die EEM-Roboter-Hosts verteilt werden soll, im Abschnitt „Jobausführung“ des Jobs aus der Dropdown-Liste „Ausführen/Verteilen“ die Option „An Test-Repository verteilen“ aus:

    Die Auswahl von „Execute measurement job“ würde lediglich das EEM-Projekt ausführen.

  • Klicken Sie auf „OK“, um den Job zu speichern

  • Öffnen Sie den neuen Job über die Lupe und klicken Sie auf „Verteilen“

  • Im Abschnitt „Werte“ sollte nun „Suite erfolgreich verteilt“ angezeigt werden:

  • Das komprimierte Verzeichnis der Projektsuite wird nun in das Verzeichnis `/opt/eranger/collector/eem_repository/from_development/test` des SKOOR Collectors kopiert, auf dem der EEM-Projekt-Job konfiguriert ist

  • Das Archiv wird mit dem Verzeichnis /opt/eranger/Kollektor/eem_repository/to_execute/test synchronisiert und steht somit für die automatische Aktualisierung zur Verfügung.

  • Wechseln Sie auf dem EEM-Roboter-Gerät zum entsprechenden EEM-Projekt-Job und aktivieren Sie die Option „Suite automatisch aktualisieren“. Wählen Sie anschließend aus der angezeigten Liste das Repository „Test“ aus:


  • Führen Sie im EEM-Projekt-Job die Option „Jetzt prüfen“ aus. Dadurch wird zunächst überprüft, ob im SKOOR Engine-Repository (unterhalb des Verzeichnisses /opt/eranger/collector/eem_repository/to_execute/test) aktualisierte Projektdateien vorhanden sind. Falls ja, werden diese auf den EEM-Roboter übertragen und ersetzen das alte Projekt-Suite-Verzeichnis. Anschließend wird der Test ausgeführt und die Ergebnisse werden zurückgegeben

  • Sollte sich herausstellen, dass der Test auf dem für das Test-Repository aktivierten „TestExecute“-Host einwandfrei läuft, kann mit der Verteilung des Projekts an das Produktions-Repository begonnen werden. Es empfiehlt sich, einen dedizierten Test-Roboter zu verwenden, auf dem alle entwickelten Tests zunächst ausgeführt werden, bevor sie an die Produktions-Roboter verteilt werden

  • Es kann bis zu 4 Minuten dauern, bis die SKOOR Engine neu hochgeladene (verteilte) Projekte auf alle SKOOR Engine-Agenten kopiert hat; daher stehen sie möglicherweise nicht sofort für die automatische Aktualisierung zur Verfügung

  • Wenn Projekte nicht verteilt werden, prüfen Sie, ob die SKOOR Engine, auf der die EEM-Projekt-Jobs konfiguriert sind, über einen per öffentlichen Schlüssel authentifizierten SSH-Zugriff auf jene SKOOR Engine Collectors verfügt, auf denen die EEM-Projekt-Jobs ausgeführt werden. Die SKOOR Engine ruft alle komprimierten Projektarchive von allen SKOOR Engine Collectors ab und verteilt sie anschließend in die Repository-Verzeichnisse aller Collectors.