Exemples : Ajout d'un nouvel objet de test (TestObject)

Cet exemple explique comment ajouter un nouvel objet de test (TestObject).

Pourquoi et quand exécuter cette tâche

Pour créer, générer et déployer un objet de test (TestObject) :

Procédure

  1. Créez les constructeurs pour l'objet de test (TestObject).

    Cet exemple illustre l'objet de test (TestObject) Java™ :

    package sdk.sample;
    
    import com.rational.test.ft.object.interfaces.*;
    import com.rational.test.ft.object.TestObjectReference;
    import com.rational.test.ft.object.map.SpyMappedTestObject;
    
    public class ExtendedGuiTestObject extends GuiTestObject{
    
    	// CINQ constructeurs standard doivent être définis dans chaque nouvel objet de test (TestObject)
    
    	public ExtendedGuiTestObject(SpyMappedTestObject mappedObject)
    	{
    		super(mappedObject);
    	}
    	
    	public ExtendedGuiTestObject(SpyMappedTestObject mappedObject, TestObject anchor)
    	{
    		super(mappedObject, anchor);
    	}
    	
    	public ExtendedGuiTestObject(SpyMappedTestObject mappedObject, 
    									TestObject anchor,
    									long scriptCommandFlags)
    	{
    		super(mappedObject, anchor, scriptCommandFlags);
    	}
    	
    	public ExtendedGuiTestObject(TestObjectReference ref) 
    	{
    		super(ref);
    	}
    
    	public ExtendedGuiTestObject(TestObject obj) 
    	{
    		super(obj);
    	}
    
         
           // Nouvelle méthode ajoutée pour cet objet de test (TestObject) ; il s'agit simplement d'un transmetteur d'appel utilisant l'API invokeProxy
    	
    	public void performClick()
    	{
    		invokeProxy("performClick");
    	}
    }

    Cet exemple illustre l'objet de test (TestObject) .Net :

    using TestObjectReference = Rational.Test.Ft.Object.TestObjectReference;
    using Rational.Test.Ft.Object.Interfaces;
    using Rational.Test.Ft.Object.Manager;
    using Rational.Test.Ft.Object.Map;
    
    namespace SDK.Sample
    {
    
    	public class ExtendedGuiTestObject:GuiTestObject
    	{
    		// CINQ constructeurs standard doivent être définis dans chaque nouvel objet de test (TestObject)
    		public ExtendedGuiTestObject(SpyMappedTestObject mappedObject):base (mappedObject) {
    		}
    
    		public ExtendedGuiTestObject(SpyMappedTestObject mappedObject, TestObject anchor)
    			:base (mappedObject, anchor){
    		}
    
    		public ExtendedGuiTestObject(SpyMappedTestObject mappedObject, TestObject anchor, 
    			long scriptCommandFlags):base (mappedObject, anchor, scriptCommandFlags) {
    		}
    
    		public ExtendedGuiTestObject(TestObjectReference ref_Renamed):base (ref_Renamed) {
    		}
    
    		public ExtendedGuiTestObject(TestObject obj):base (obj) {
    		}
    
    		// Nouvelle méthode ajoutée pour cet objet de test (TestObject) ; il s'agit simplement d'un transmetteur d'appel utilisant l'API InvokeProxy
    
    		public virtual void PerformClick()	{
    			InvokeProxy("performClick");
    		}
    	}
    }
  2. Définissez de nouveaux noms canoniques pour l'objet de test (TestObject) dans le fichier de personnalisation.

    Cet exemple illustre la définition de nouveaux noms canoniques pour un objet de test (TestObject) :

    <?xml version="1.0" encoding="UTF-8"?>
    <ConfigFile L=".ConfigFile">
    	<Section L=".ConfigFileSection">
    		<Name>proxies</Name>
    		<Val L=".ProxyManager">
    			<DomainImplementation L=".DomainImplementation">
    				<Name>Net</Name>
    				<Obj L=".Proxy">
    					<ClassName>[NETProxyExtension]SDK.Sample.TestButtonProxy</ClassName>
    					<Replaces/>
    					<UsedBy>Rational.Controls.CustomButton</UsedBy>
    				</Obj>
    			</DomainImplementation>
    		</Val>
    	</Section>
    	<Section L=".ConfigFileSection">
    		<Name>testObjects</Name>
    		<Val L=".TestObjectManager">
    			<ComponentModel L=".ComponentModel">
    				<Name>Java</Name>
    			</ComponentModel>
    			<ComponentModel L=".ComponentModel">
    				<Name>Net</Name>
    				<Obj L=".TestObject">
    					<CanonicalName>ExtendedGuiTestObject</CanonicalName>
    					<TestObject>[NETProxyExtension]SDK.Sample.ExtendedGuiTestObject</TestObject>
    				</Obj>
    			</ComponentModel>
                            <ComponentModel L=".ComponentModel">
    				<Name>Java</Name>
    				<Obj L=".TestObject">
    					<CanonicalName>ExtendedGuiTestObject</CanonicalName>
    					<TestObject>sdk.sample.ExtendedGuiTestObject</TestObject>
    				</Obj>
    			</ComponentModel>
    		</Val>
    	</Section>
    </ConfigFile>
  3. Mappez des proxys au nouvel objet de test (TestObject).

    Cet exemple illustre le remplacement par la source du proxy Java de la méthode getTestObjectClassName() :

    import com.rational.test.ft.domain.*;
    .
    .
    public String getTestObjectClassName()
    {
        return "ExtendedGuiTestObject";  //  nom canonique du nouvel objet de test (testObject)
    }

    Cet exemple illustre le remplacement par le proxy .Net de la méthode GetTestObjectClassName() :

    using Rational.Test.Ft.Domain;.
    .
    public override System.String GetTestObjectClassName()
    {
       return "ExtendedGuiTestObject";  //  nom canonique du nouvel objet de test (testObject) 
    }
  4. Générez les fichiers binaires de l'objet de test (TestObject).
  5. Déployez les fichiers binaires de l'objet de test (TestObject) en les copiant dans le répertoire customization de Functional Tester, C:\Documents and Settings\All Users\Application Data\IBM\RFT\customization.
  6. Redémarrez Functional Tester.

Retour d'informations