Tutorial Bibliotheksworkspace

Dieses Tutorial zeigt an einem Beispiel, wie Sie in einem Bibliotheksworkspace abgespeicherte Packages, Projekte, Projektgeneratoren und Benutzer-Python-Bibliotheken innerhalb des Bibliotheksworkspace und aus einem anderen Workspace heraus aufrufen oder importieren können.

Zur Durchführung des Tutorials übernehmen Sie den mitgelieferten Beispiel-Workspace Tutorial-LibraryWorkspace. Die dafür nötigen Schritte sind hier beschrieben.

Weitere Details siehe Inhalte von Bibliotheksworkspaces.

Bibliothek deklarieren

Der mitgelieferte Workspace ExampleLibraryWorkspace wurde als Bibliotheksworkspace deklariert.

  1. Öffnen Sie den Workspace ExampleLibraryWorkspace (Unterordner des Ordners, in den Sie die Tutorial-Daten geladen haben) in ecu.test.

  2. Navigieren Sie in die Workspace-Einstellungen unter Optionen ‣ Einstellungen ‣ Workspace-Einstellungen.

Info

Die Option Ist eine Bibliothek ist bereits aktiviert und der Titel, die Version sowie der Namespace des Bibliotheksworkspace sind definiert.

../_images/configureWorkspaceSettings.png

Bibliothek einbinden

Ein Bibliotheksworkspace wird in einen anderen Workspace eingebunden, indem der Bibliotheksworkspace in dessen Einstellungen unter Bibliotheken als Abhängigkeit hinzugefügt wird.

  1. Wechseln Sie in den Workspace, in den Sie die Tutorial-Daten geladen haben.

  2. Navigieren Sie in die Bibliotheken-Einstellungen unter Optionen ‣ Einstellungen ‣ Workspace-Einstellungen ‣ Bibliotheken.

  3. Benutzen Sie die Schaltfläche img_add, um den ExampleLibraryWorkspace in den Workspace einzubinden.

../_images/configureLibraries.png

Packages und Projekte

Nachdem eine Bibliothek in einen Workspace eingebunden wurde, können Packages aus dem Bibliotheksworkspace in Projekten und Packages des Hauptworkspace aufgerufen werden. Des Weiteren können Projekte aus dem Bibliotheksworkspace in Projekten des Hauptworkspace eingebunden werden.

  1. Öffnen Sie das Package Caller.pkg.

  2. Öffnen Sie den ersten Testschritt.

    Es handelt sich um einen Aufruf des Bibliothekspackages LibCallee.pkg aus dem eingebundenen Bibliotheksworkspace ExampleLibraryWorkspace. Im Feld Packagepfad sehen Sie die Pfad-Referenz der Form:

    <libraries.[Namespace der Bibliothek].packages>\[relativer Package-Pfad im Bibliotheksworkspace]

    ../_images/libPackageCall.png
  3. Öffnen Sie das Projekt Caller.prj.

    In der ersten Zeile sehen Sie einen Bibliothekspackage-Aufruf aus einem Projekt. In der zweiten Zeile wird ein Projekt aus dem Bibliotheksworkspace verwendet.

  4. Um einen neuen Bibliothekspackage-Aufruf zu erstellen, ziehen Sie das gewünschte Bibliothekspackage einfach per Drag & Drop aus dem Workspace-Explorer in den Testfall oder das Projekt. Ein Bibliotheksprojekt-Aufruf in einem Projekt kann auf dieselbe Art erstellt werden.

Testkonfiguration und Testbenchkonfiguration

Testkonfigurationen (TCF) und Testbenchkonfigurationen (TBC) können zur Wiederverwendung in eine Bibliothek ausgelagert werden.

  1. Öffnen Sie die Testbenchkonfiguration FMI_BusPortGeneric.tbc innerhalb der Bibliothek.

    In der TBC ist der Basispfad auf <workspace> gesetzt. Dies bewirkt, dass die Bibliothek in der die TBC abgelegt ist, als Basispfad für die untergeordneten Tools verwendet wird.

  2. Öffnen Sie die Testkonfiguration BusPortGeneric.tcf innerhalb der Bibliothek.

    Im Tab Plattform sowie Buszugriff sind Artefakte mit relativen Pfaden referenziert. Diese Pfade beziehen sich auf die Bibliothek, in der sich die TCF befindet.

  3. Öffnen Sie das Projekt ConfigChangeFromLibrary_BusPortGeneric.prj innerhalb des Hauptworkspace.

    Hier werden TBC und TCF aus einer Bibliothek in einem Konfigurationswechsel verwendet.

  4. Markieren Sie TBC und TCF im Workspace Explorer und ziehen Sie diese per Drag & Drop in das Panel Konfigurationen

    Info

    Konfigurationen können aus dem Hauptworkspace, aus derselben Bibliothek oder aus verschiedenen Bibliotheken geladen werden.

    ../_images/libConfig.png
  5. Öffnen Sie den Konfigurationswechselschritt aus dem Projekt.

    Die Pfade werden in folgendem Format dargestellt:

    <libraries.[Namespace der Bibliothek].configurations>\[relativer Pfad im Configurations-Ordner der Bibliothek]

    ../_images/libConfigChange.png

Weitere Details siehe Konfigurationen.

Traceschrittvorlagen

Nachdem eine Bibliothek in einen Workspace eingebunden wurde, können Traceschrittvorlagen aus dem Bibliotheksworkspace in Packages des Hauptworkspace verwendet werden.

  1. Öffnen Sie das Package Caller.pkg.

  2. Wechseln Sie in den Reiter Traceanalyse.

  3. Öffnen Sie den ersten Traceschritt der ersten Episode.

    Es handelt sich um einen Aufruf der Bibliothekstraceschrittvorlage UpperBound aus dem eingebundenen Bibliotheksworkspace ExampleLibraryWorkspace. Im Feld Pfad sehen Sie eine Pfad-Expression der Form:

    libraries.<Namespace der Bibliothek>.traceStepTemplates + <relativer Traceschrittvorlagen-Pfad im Bibliotheksworkspace>

    ../_images/libTraceStepTemplate.png
  4. Um eine Bibliothekstraceschrittvorlage in einem Traceschritt zu verwenden, ziehen Sie die gewünschte Vorlage einfach per Drag & Drop aus dem Tab Traceschrittvorlagen in die Traceanalyse.

Generatoren

  1. Öffnen Sie das Projekt Caller.prj.

    ../_images/libProjektGenerator.png

    In den Zeilen drei, vier und fünf sind jeweils beispielhafte Aufrufe von Generatoren zu sehen, welche aus einer Bibliothek stammen. Im Projekteditor sind die Generatoren-Aufrufe aus Bibliotheksworkspaces anhand ihrer petrolfarbenen Icons erkennbar.

    Generator

    Standard-Icon

    Bibliotheks-Icon

    Projektgenerator

    prjgen_icon

    lib_prjgen_icon

    Packagegenerator

    pkggen_icon

    lib_pkggen_icon

    Parametersatzgenerator

    pargen_icon

    lib_pargen_icon

    Weitere allgemeine Informationen zu Generatoren, welche ebenso auch für Generatoren aus Bibliothekworkspaces gelten, sind in den Kapiteln Projektgenerator, Packagegenerator bzw. Parametersatzgenerator zu finden.

  2. Das Einfügen eines weiteren Generatoraufrufs kann über das Kontextmenü (bspw. Neu ‣ Projektgenerator) oder über die vertikale Buttonleiste im Projekteditor erfolgen.

Benutzer-Python-Bibliotheken

Benutzer-Python-Bibliothek verwenden

  1. Öffnen Sie das Package Caller.pkg.

    Im zweiten Testschritt sehen Sie den Aufruf einer Beispielfunktion aus return42Module.py des Bibliotheksworkspace ExampleLibraryWorkspace.

  2. Öffnen Sie den Testschritt.

    Im Feld Ausdruck sehen Sie den Ausdruck, der für den Aufruf benutzt wird. Im Gegensatz zu gewöhnlichen Funktionsaufrufen muss bei einem Aufruf aus einem Bibliotheksworkspace statt dem Modul user immer das Modul libraries.<Namespace der Bibliothek>.user benutzt werden.

../_images/libUserPyModule.png

Benutzer-Python-Bibliothek importieren

  1. Öffnen Sie das Verzeichnis für Benutzer-Python-Bibliotheken (z.B. über Extras ‣ Benutzer-Python-Bibliothek bearbeiten …)

  2. Öffnen Sie die Datei libImporterModule.py.

    Auf Zeile vier sehen Sie ein Beispiel für den Import einer Benutzer-Python-Bibliothek aus einem eingebundenen Bibliotheksworkspace. Beachten Sie das auch hier aus dem Modul libraries.<Namespace der Bibliothek>.user importiert wird.

  3. Wechseln Sie in den ExampleLibraryWorkspace und öffnen Sie das Verzeichnis für Benutzer-Python-Bibliotheken (z.B. über Extras ‣ Benutzer-Python-Bibliothek bearbeiten …)

  4. Öffnen Sie die Datei absoluteImporterModule.py.

    Auf Zeile vier sehen Sie ein Beispiel für den Import einer Benutzer-Python-Bibliothek innerhalb des gleichen Bibliotheksworkspace. Der Import ist identisch zu einem Import aus einem anderen Workspace, der diesen Bibliotheksworkspace als Abhängigkeit verwendet (wie in der zuvor betrachteten Datei libImporterModule.py).

  5. Öffnen Sie die Datei relativImporterModule.py.

    Auf Zeile vier sehen Sie ein weiteres Beispiel für den Import einer Benutzer-Python-Bibliothek innerhalb des gleichen Bibliotheksworkspace. In diesem Fall wird ein relativer Import durchgeführt.

Info

Im Verzeichnis für Benutzer-Python-Bibliotheken sehen Sie ausserdem den Ordner PackageCheckExample. Dies ist eine beispielhafte Implementierung einer Packageüberprüfung. Um die Packageüberprüfung auszuführen, benutzen Sie wie gewohnt im gewünschten Package den Button Prüfe Package.

Benutzerdefinierte Utilities

  1. Öffnen Sie das Package Caller.pkg.

  2. Öffnen Sie den dritten Testschritt.

    Es handelt sich um einen Aufruf des Benutzer-Utilities LibUtility aus dem eingebundenen Bibliotheksworkspace ExampleLibraryWorkspace.

  3. Um einen neuen Aufruf eines benutzerdefinierten Utilities zu erstellen, ziehen Sie das gewünschte Utility einfach per Drag & Drop aus dem Testschritte-Baum in das Package.

Mappingdateien und Konstantendefinitionen

Nachdem eine Bibliothek in einen Workspace eingebunden wurde, können Mappingdateien sowie Konstantendefinitionsdateien aus dem Bibliotheksworkspace in Testkonfigurationen und Projekten des Hauptworkspace verwendet werden.

Globales Mapping

  1. Öffnen Sie die Testkonfiguration Test config with library XAM.tcf.

  2. Öffnen Sie den Tab Tab Allgemein.

    Es handelt sich um die Referenz einer Mapping-Datei GlobalMapping in Library.xam aus dem eingebundenen Bibliotheksworkspace ExampleLibraryWorkspace.

Konstantendefinition

  1. Öffnen Sie die Testkonfiguration Test config with library GCD.tcf.

  2. Öffnen Sie den Tab Tab Globale Konstanten.

    Es handelt sich um die Referenz einer Konstantendefinitionsdatei GlobalConstants in Library.gcd aus dem eingebundenen Bibliotheksworkspace ExampleLibraryWorkspace.