Updates to the load test behavior model

There are new features in the model and there are changes to the following two plug-ins, which the protocol behavior model plug-in depends on.

There are changes to the two plug-ins that the protocol behavior model plug-in depends on:

  • com.ibm.rational.test.common.models.behavior
  • com.ibm.rational.test.lt.models.behavior

com.ibm.rational.test.common.models.behavior.CBAssetMigration

To open a performance test in version 7.0 that was created in version 6.1.2, the test suite loader must identify model elements that have been modified in 7.0 and adapt to the changes. The suite loader accomplishes identification and adaptation by recognizing elements that implement the CBAssetMigration interface. If a model element has been modified in a given release, starting with that release, that particular model element must implement this interface. The two methods from this interface that need to be implemented are as follows:
  • Public Boolean needMigration(CBVersion version): determines whether migration is needed
  • Public void migrate(CBVersion version): performs any required migration

The version that is passed into this method is the version of the test. LTTestUtil.getCurrentVersion() always returns the current version of the test suite that can be created with the installed version of the product. The methods in the BehaviorUtil class enable you to compare any two version objects.

com.ibm.rational.test.common.models.behavior.CBElementHost

A model element can implement this interface provided that it is a container and that it has children in the model. Some examples of core model elements that implement this interface are CBLoop, LTTransaction, and LTTest.

com.ibm.rational.test.lt.models.behavior.common.LTAnnotation com.ibm.rational.test.lt.models.behavior.common.impl.LTAnnotationImpl

If a protocol model element is required to hold data that is not text, or that is large, the data being held could affect performance if it persists within the test suite model. To prevent performance issues, these types of data are stored in a file called annotation, which is in the test suite, but outside of the model. To use this feature, the attribute that holds the data must be created with type LTAnnotation. Use the APIs provided in this interface to access the data.

com.ibm.rational.test.lt.models.behavior.common.LTArmEnabled

A model element can implement this interface if this interface is required to log Application Resource Monitoring (ARM) data. ARM must be supported by the protocol being tested for this feature to work end-to-end.

Extensibility using RSA/EMF modeling

The model can now be extended by using Software Architect Eclipse Modeling Framework (EMF). A base starter model is provided along with the Load Test Behavior Model (LTBM) plug-in. You can start with this model and add the protocol extension model elements to the base model. When generating EMF code, choose the model element that is unique to the protocol model.