La méthode supportFeatures() extrait la liste des fonctions de l'objet de modèle de test, et si elle détermine que ces fonctions sont prises en charge, elle renvoie l'objet LTTestExtensionPreferences approprié. L'objet renvoyé implémente l'interface com.ibm.rational.test.lt.codegen.core.config.IExtensionPreferences, qui constitue la partie publique de la classe LTTestExtensionPreferences.
La génération de code est contrôlée par la classe com.ibm.rational.test.lt.codegen.core.CodeGenerator. Cette classe utilise un objet EclipseCodegenConfiguration qui stocke les mappes de hachage pour les traducteurs, les adaptateurs d'élément de modèle et les modèles déterminés par type d'élément de langage. Des traducteurs spécifiques sont définis pour les éléments de test du conteneur, les pools de données et d'autres éléments propres au protocole et indépendants. Les éléments qui ne peuvent pas exister indépendamment sont convertis et deviennent des enfants des éléments qui les contiennent via la méthode translateChildren() du traducteur.
Le générateur de code détermine le traducteur approprié et appelle sa méthode getTranslationFor() pour l'élément de modèle donné.
La classe ElementAdapter et sa méthode getAdapterForType() détermine quel est l'élément de modèle de génération de code approprié pour l'élément de modèle de comportement donné.
La traduction des éléments de test implique les étapes ci-dessous.