Übung 2: Testkonfiguration und Testbenchkonfiguration

In dieser Lektion lernst du die zwei zentralen Konfigurationen in ecu.test kennen und richtest sie für einen beispielhaften Modellzugriff ein. Damit hast du die Grundlage, um in den folgenden Übungen Testfälle zu erstellen, die auf reale Testgrößen zugreifen.

Am Ende dieser Übung hast du eine Testbenchkonfiguration und eine Testkonfiguration über den Testbenchkonfigurationseditor und den Testkonfigurationseditor angelegt, geladen und gestartet. Außerdem kannst du auf die Modellgrößen eines Beispielsystems zugreifen.

Voraussetzungen:

  • Übung 1 ist abgeschlossen.

  • ecu.test ist mit dem Workspace Tutorial gestartet.

Die zwei Konfigurationen in ecu.test

Sobald ein Testfall nicht mehr nur einfache Berechnungen ausführt, sondern auf reale Testgrößen zugreift, werden zusätzliche Informationen benötigt. Es muss bekannt sein, welche Testgrößen für den Test zur Verfügung stehen und über welches Tool auf diese Größen zugegriffen wird.

Diese beiden Informationen werden bewusst in zwei Konfigurationsarten aufgeteilt:

Testbenchkonfiguration (TBC)

Beschreibt die technische Testumgebung, also Hosts, Tools und Ports, und liefert den technischen Zugriff auf die Testgrößen.

Testkonfiguration (TCF)

Beschreibt das System unter Test (SuT) und seine Datenquellen, also Modelle, Steuergerätebeschreibungen oder Busdatenbanken. Sie liefert die fachliche Sicht und stellt die Testgrößen bereit.

Die Trennung hat den Vorteil, dass sich Prüfplatz und SuT unabhängig voneinander anpassen oder austauschen lassen. Ein Testfall kann so in unterschiedlichen Phasen (zum Beispiel SiL und HiL) wiederverwendet werden.

Für ausführbare Testfälle wird immer die Kombination aus TBC und TCF benötigt. Sind beide Konfigurationen in ecu.test vorhanden und geladen, kann auf die benötigten Testgrößen des Testsystems und des SuT zugegriffen werden.

../../_images/Tutorial_Lesson_2_TBC_TCF_Overview.png

Konfiguration von Testobjekten innerhalb der Testumgebung

Info

Zusätzlich zum Zugriff auf System und Tools beeinflusst in der Testkonfiguration auch das Zeitverhalten die Ausführung. Im Tab Ausführung legst du fest, ob ein Testfall in Echtzeit oder in Simulationszeit läuft und ob die Simulation schrittweise oder kontinuierlich fortschreitet.

Begriffe der Testbenchkonfiguration

Host

Der Rechner, auf dem ein Tool ausgeführt wird, lokal oder entfernt.

Tool

Ein unterstütztes Werkzeug, das den Zugriff auf Schnittstellen oder Testgrößen ermöglicht.

Port

Die abstrakte Schnittstelle, über die der Zugriff in ecu.test verwendet wird.

Info

Für die Praxis ist es hilfreich, Tool und Port immer über die passende Kategorie zu denken:

Info

Hintergrund zu Tool-Schnittstellen (ToolLibs), zur lokalen und Remote-Anbindung über Tool Server sowie zur erweiterten Konfiguration in der ToolLibs.ini findest du im Kapitel Tool-Schnittstellen.

Die Testkonfiguration liefert die fachliche Beschreibung der Testgrößen. Die Testbenchkonfiguration stellt den technischen Zugriff über Tools und Ports bereit. Testfälle enthalten die Testlogik und verwenden beides gemeinsam, wie hier exemplarisch für SiL und HiL dargestellt:

../../_images/Tutorial_Lesson_2_TBC_Concept.png

„System under test“ und Testumgebung im SiL-Kontext.

../../_images/Tutorial_Lesson_2_TCF_Concept.png

„System under test“ und Testumgebung im HiL-Kontext.

In jedem Port, also einer fachlichen Domäne, werden verschiedene Dateiformate als Grundlage verwendet.

../../_images/Tutorial_Lesson_2_Port_File_Formats.png

Übliche Dateiformate je Port und Tool und deren Bezug zueinander.

Testbenchkonfiguration und Testkonfiguration anlegen

In dieser Übung legst du beide Konfigurationen an und lädst sie in ecu.test. Danach steht der Zugriff auf das konfigurierte System bereit.

Da kein reales Testsystem zur Verfügung steht, wird das Tool FMI der Modelica Association verwendet. Es greift auf ein Beispielmodell zu, das im Trainingsworkspace abgelegt ist. Ein externes Werkzeug ist nicht nötig.

Testbenchkonfiguration anlegen

Die Testbenchkonfiguration stellt den technischen Zugriff bereit. Du legst einen Toolhost und einen Port für das Tool FMI an.

Damit ein Tool verwendet werden kann, wird ein passender Toolhost benötigt. In diesem Beispiel arbeitest du lokal. Daher legt ecu.test einen lokalen Toolhost automatisch an.

  1. Wähle Datei ‣ Neu ‣ Testbenchkonfiguration.

    Im Testbenchkonfigurationseditor werden die verfügbaren Tools angezeigt.

    ../../_images/Tutorial_Lesson_2_Create_TBC.png
  2. Klicke mit der rechten Maustaste auf Modelica Association: FMI und wähle Neuer Port.

  3. Wähle den Porttyp MODELACCESS und bestätige mit OK.

    Unterhalb des Tools wird der Eintrag MDL01 (MODELACCESS) angezeigt. Damit ist der Modellzugriff über die Testbenchkonfiguration bereitgestellt.

    ../../_images/Tutorial_Lesson_2_MODELACCESS_Port.png
  4. Speichere die TBC (Shortcut Strg+S).

    Der Datei-Explorer öffnet sich im Verzeichnis Configurations des eingestellten Workspace-Verzeichnisses.

  5. Vergib einen Namen (zum Beispiel FMI.tbc).

  6. Bestätige mit Speichern.

    Die TBC erscheint im ecu.test-Workspace-Explorer unter Configurations und kann von dort aus erneut geöffnet und weiterbearbeitet werden.

  7. Lade die Testbenchkonfiguration mit Klick auf das Werkzeug-Icon.

    Alternativ: Ziehe die TBC-Datei aus dem Workspace-Explorer per Drag and Drop in den Bereich Konfigurationen.

    ../../_images/Tutorial_Lesson_2_Load_TBC.png

    Im Bereich Konfigurationen wird die neu erstellte TBC geladen und angezeigt.

    ../../_images/Tutorial_Lesson_2_TBC_Loaded.png
  8. Schließe den Testbenchkonfigurationseditor mit Klick auf das X im Tab.

Testkonfiguration anlegen

Die Testkonfiguration beschreibt das Testobjekt. Du bindest eine Modelldatei ein, damit die Modellgrößen des Systems in ecu.test verfügbar werden.

  1. Wähle Datei ‣ Neu ‣ Testkonfiguration.

  2. Wechsle in den Tab Plattform.

  3. Klicke mit der rechten Maustaste auf Modellzugriff und wähle Neu.

  4. Wähle als Systemnamen einen beliebigen Wert und bestätige mit OK.

  5. Wähle den Modell-Port MDL01.

  6. Wähle beim Feld Modell über Datei auswählen die mitgelieferte Datei Offline-Models/EV_SIL.py.

    Damit ist die Datenquelle für das System eingetragen. Die enthaltenen Modellgrößen werden später geladen und können in Testfällen verwendet werden.

  7. Speichere die TCF (Shortcut Strg+S).

    Der Datei-Explorer öffnet sich im Verzeichnis Configurations des eingestellten Workspace-Verzeichnisses.

  8. Vergib einen Namen (zum Beispiel EV_SIL.tcf).

  9. Bestätige mit Speichern.

    Die TCF erscheint im ecu.test-Workspace-Explorer unter Configurations und kann von dort aus erneut geöffnet und weiterbearbeitet werden.

  10. Lade die TCF mit Klick auf das Zahnrad-Icon.

    ../../_images/Tutorial_Lesson_2_TCF_In_Workspace.png

    Alternativ: Ziehe die TCF-Datei aus dem Workspace-Explorer per Drag and Drop in den Bereich Konfigurationen.

    Im Bereich Konfigurationen wird die neu erstellte TCF geladen und angezeigt.

  11. Schließe den TCF-Editor mit Klick auf das X im Tab.

Beide Konfigurationen laden und starten

Nach dem Speichern liegen beide Konfigurationen im Workspace-Explorer im Ordner Configurations. Wurden sie bereits über den Editor geladen, sind die Schritte 1 und 2 nicht relevant und du startest mit Schritt 3.

Andernfalls lassen sich die Konfigurationen aus dem Workspace-Explorer in das Fenster Konfigurationen laden:

  1. Klicke im Workspace-Explorer mit der rechten Maustaste auf die TBC-Datei und wähle Testbenchkonfiguration auswählen.

  2. Klicke im Workspace-Explorer mit der rechten Maustaste auf die TCF-Datei und wähle Testkonfiguration auswählen.

    Beide Konfigurationen werden im Fenster Konfigurationen angezeigt.

  3. Klicke im Fenster Konfigurationen auf den Play-Button.

    ../../_images/Tutorial_Lesson_2_Start_Configurations.png

Die Konfigurationen werden geladen, die Modelldatei wird gelesen und die Verbindung zum FMI-Modell hergestellt. Grüne Punkte an Tool und Port zeigen das erfolgreiche Laden. Im Aktionsfenster steht zusätzlich der Tab Modellzugriff zur Verfügung.

Nach dem Laden stehen außerdem konfigurationsabhängige Inhalte bereit, zum Beispiel:

  • weitere toolabhängige Tabs im Aktionsfenster

  • toolspezifische Jobs

  • aufgelöste globale Konstanten und Mappingreferenzen

Zugriff auf das System in ecu.test prüfen

Nach dem Laden sind die Modellgrößen des Systems in ecu.test sichtbar. Du prüfst, ob diese im Tab Modellzugriff unter dem vergebenen Systemnamen verfügbar sind.

  1. Öffne im Aktionsfenster den Tab Modellzugriff.

    ../../_images/Tutorial_Lesson_2_Model_Access_Tab.png
  2. Klappe den Wurzelknoten auf (Der Name des Wurzelknotens entspricht dem gewählten Systemnamen in der TCF.).

    ../../_images/Tutorial_Lesson_2_Model_Access_Tree.png

    Alle Testsystemgrößen werden angezeigt. Ist ein Package geöffnet und im Editor aktiv, lassen sich diese Größen direkt als Testschritte einfügen.

Ergebnis der Lektion 2

Du hast eine Testbenchkonfiguration und eine Testkonfiguration angelegt, geladen und gestartet. Der Modellzugriff ist in ecu.test sichtbar, die verfügbaren Systemgrößen stehen für die weitere Verwendung in Testfällen bereit.

Zugriffe auf andere Ports, etwa Applikation, Diagnose oder Multimedia, funktionieren nach demselben Prinzip, sind aber nicht Bestandteil dieser Einführung.

In der nächsten Übung verwendest du die jetzt verfügbaren Testgrößen in einem Testfall und greifst über das konfigurierte Tool lesend und schreibend darauf zu.

Weiter mit Übung 3.