Transmitindo Parâmetros para o Método callScript

Este tópico descreve como utilizar as diferentes assinaturas do método callScript para transmitir dados de um script para outro.

O exemplo utiliza dois scripts diferentes do Functional Tester:

O script TheCaller utiliza três versões diferentes do método callScript:

callScript("TheCalled");
String[] dataToPass = new String[4];...
callScript("TheCalled",dataToPass);
Object[] objdataToPass = new Object[4];...
callScript("TheCalled",objdataToPass);

O script TheCaller foi gravado da seguinte forma:

import resources TheCallerHelper;                
import com.rational.test.ft.*;
import com.rational.test.ft.object.interfaces.*;
import com.rational.test.ft.object.interfaces.SAP.*;
import com.rational.test.ft.object.interfaces.siebel.*;
import com.rational.test.ft.script.*;
import com.rational.test.ft.value.*;
import com.rational.test.ft.vp.*;

/**
* Description   : Functional Test Script
* @author Administrator
*/

public class TheCaller extends TheCallerHelper{
/**
* Script Name   : TheCaller
	 * Generated     : Jul 14, 2006 5:13:02 PM
	 * Description   : Functional Test Script
	 * Original Host : WinNT Version 5.1  Build 2600 (S)
	 * 
	 * @since  2006/07/14
   * @author Administrator
*/
public void testMain (Object[] args)
 {
    
    callScript("TheCalled");
    
    String[] dataToPass = new String[4];    dataToPass[0] = "this";
    dataToPass[1] = "is";
    dataToPass[2] = "really";
    dataToPass[3] = "cool";
    
    callScript("TheCalled",dataToPass);
    
    Object[] objdataToPass = new Object[4];    objdataToPass[0] = new String("Thought the previous was cool?");
    objdataToPass[1] = "Take this one!";
    objdataToPass[2] = new Float(0.02);    objdataToPass[3] = new Integer(4711);    
    callScript("TheCalled",objdataToPass);
}
}

O script TheCalled utiliza um loop simples para imprimir os parâmetros recebidos em System.out:

import resources.TheCalledHelper;

import com.rational.test.ft.*;
import com.rational.test.ft.object.interfaces.*;
import com.rational.test.ft.object.interfaces.SAP.*;
import com.rational.test.ft.object.interfaces.siebel.*;
import com.rational.test.ft.script.*;
import com.rational.test.ft.value.*;
import com.rational.test.ft.vp.*;
/**
* Description   : Functional Tester Script
* @author Administrator
*/

public class TheCalled extends TheCalledHelper
{
/**
* Script Name   : TheCalled
	 * Generated     : Jul 14, 2006 5:13:02 PM
	 * Description   : Functional Test Script
	 * Original Host : WinNT Version 5.1  Build 2600 (S)
	 * 
	 * @since  2006/07/14
	 * @author Administrator
*/
public void testMain (Object[] args)
 {
    if (args.length < 1)
    {
        System.out.println( "Expected at least 1 arg, but I got:
             "+args.length);
                 return;
    }
    else
    {
        System.out.println( "Got: "+args.length+" args");
    }
    
    for (int i = 0; i < args.length; ++i)
    {
        System.out.println( " arg["+i+"] = "+args[i]);
    }
}
}

Feedback