callScript メソッドへのパラメーターの引き渡し

このトピックでは、callScript メソッドのさまざまなシグニチャーを使用して 1 つのスクリプトから別のスクリプトにデータを渡す方法を説明します。

例では、2 つの異なる Functional Tester スクリプトを使用します。

TheCaller スクリプトは、以下に示す callScript メソッドの 3 つの異なるバージョンを使用します。

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

TheCaller スクリプトは次のように記録されました。

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);
}
}

TheCalled スクリプトは、簡単なループを使用して、受け取ったパラメーターを 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]);
    }
}
}

フィードバック