Verhalten einer Protokollerweiterung modellieren

Zum Erstellen eines Modellelements für das Protokoll müssen Sie die Klasse com.ibm.rational.test.lt.models.behavior.impl.CBBlockImpl erweitern. Durch Erweitern dieser Klasse verfügen Sie über die komplette Basisfunktionalität dieses Modellelements. Dazu gehören (u. a.) die Speicherung von Daten in den Testdateien sowie Anwendungsprogrammierschnittstellen zum Definieren oder Abrufen von Eigenschaften eines Modellelements.

Informationen zu diesem Vorgang

Das Load Test-Verhaltensmodell (Load Test Behavior Model, LTBM) verfügt noch über andere Modellelemente, die ebenfalls von der Klasse CBBlockImpl aus erweitert werden und die über verschiedene Funktionen verfügen. Sie haben auch die Möglichkeit, diese Elemente für Ihr Protokoll zu erweitern. Vom Load Test-Verhaltensmodell werden einige allgemeine Konstrukte (com.ibm.rational.test.lt.models.behavior.common) bereitgestellt, die von den Protokollerweiterungen wiederverwendet werden können. Diese Konstrukte sind in verschiedenen Paketen im Load Test-Verhaltensmodell (LTBM) enthalten. Detaillierte Informationen hierzu finden Sie im Javadoc und im Abschnitt zu den Anwendungsprogrammierschnittstellen.

Zum Erstellen eines Protokollmodellelements, das nicht zu einem der allgemeinen Konstrukte des Load Test-Verhaltensmodells gehört, müssen Sie die Klasse CBBlockImpl erweitern. Handelt es sich bei dem Modellelement für Ihr Protokoll um einen bestimmten Typ des Modellelements im Load Test-Verhaltensmodell, müssen Sie die Implementierungsklasse für dieses Element erweitern. Wird in einer Protokollerweiterung beispielsweise ein bestimmter Typ von CBLoop-Konstrukt bereitgestellt, wird die Klasse CBLoopImpl erweitert, wobei zusätzliche Attribute zu dem neuen Element hinzugefügt werden.

Vorgehensweise

  1. Erstellen Sie (optional) eine Schnittstelle, über die die Methoden (inkl. der Setter und Getter für die durch dieses Element hinzugefügten Attribute) für die Klasse definiert werden.
  2. Erstellen Sie eine neue Klasse, über die die Schnittstelle CBBlockImpl erweitert wird. Haben Sie im ersten Schritt eine Schnittstelle erstellt, implementieren Sie diese Schnittstelle.
  3. Rufen Sie im Konstruktor des Modellelements die Methode setType(typ) auf. Bei typ handelt es sich um eine eindeutige Typenzeichenfolge, über die das Modellelement entsprechend seiner Eintragung über den Erweiterungspunkt com.ibm.rational.test.lt.models.behavior.protocol gekennzeichnet ist.
  4. Implementieren Sie die Getter und Setter der Attribute für diese Modellelementklasse.
    Anmerkung: Mit dem Setter müssen die Wertattribute der Primitive-Datentypen in das zugrunde liegende Modell eingegeben werden. Dazu muss (je nach Attributtyp) eine der überlagernden Methoden des Typs setProperty() verwendet werden.
  5. Zum Definieren von Attributen eines komplexen Typs müssen Sie die Methode addReference() außer Kraft setzen.

Ergebnisse

Beim Laden des Tests empfängt der Getter (zumindest anfänglich) den Wert des Attributs des zugrunde liegenden Modells. Dabei kommt auf der Basis des für Primitive-Attribute geltenden Typs von Eigenschaften eine der überlagernden Methoden des Typs getProperty() zum Einsatz.

Sie können das Modellelement definieren, das den Wert der Attribute in lokalen Attributen speichern soll. Die geltende Richtlinie sieht allerdings vor, dass der Getter den Wert zunächst vom zugrunde liegenden Modell empfängt und der Setter den Wert im zugrunde liegenden Modell speichert.


Feedback