다음 예제는 Windows에서 실행되는 스크립트에 적용할수 있습니다.
import javax.swing.JOptionPane;
import resources.RegistryExampleHelper;
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 RegistryExample extends RegistryExampleHelper
{
/**
* Script Name : RegistryExample
* Generated : Jul 20, 2006 1:48:49 PM
* Description : Functional Test Script
* Original Host : WinNT Version 5.1 Build 2600 (S)
*
* @since 2006/07/20
* @author Administrator
*/
public void testMain (Object[] args)
{
try
{
//Use this code to extract String (REG_SZ) values from the registry.
String regKeyString ="HKEY_LOCAL_MACHINE\\SOFTWARE\\Rational Software\\Rational Test\\8\\Rational FT Install Directory";
String regValueString = getOperatingSystem().getRegistryValue(regKeyString);
JOptionPane.showMessageDialog(null, regValueString,"String Registry Value",1);
}
catch (NoSuchRegistryKeyException e)
{
JOptionPane.showMessageDialog(null, "Error finding registry key.");
System.out.println ("No Such Registry Key Exception." + e);
}
try
{
//Use this code to extract Integer (DWORD) values from the registry.
String regKeyInt = "HKEY_CURRENT_USER\\Control " +"Panel\\Desktop\\LowLevelHooksTimeout";
Integer regValueInt = new
Integer(getOperatingSystem().getRegistryIntValue(regKeyInt));
JOptionPane.showMessageDialog(null,regValueInt, "Integer Registry " + "Value ",1);
}
catch (NoSuchRegistryKeyException e)
{
JOptionPane.showMessageDialog(null, "Error finding registry key.");
System.out.println ("No Such Registry Key Exception. (" + e + ")" );
}
}
}
Functional Tester 사용자가 레지스트리에서 값을 읽을 때에는 두 명령을 사용할 수 있습니다. getRegistryValue 명령은 레지스트리에서 문자열 값을 읽을 때 사용합니다. getRegistryIntValue는 레지스트리에서 정수 값을 읽을 때 사용합니다. "REG_SZ" 용어에서는 문자열과 정수 유형에 대해 설명합니다. 두 명령은 모두 추출할 레지스트리 키를 포함하는 String 인수 유형을 가져옵니다.
예제에서는 레지스트리에서 문자열과 정수값 모두를 추출합니다. String 값 세그먼트의 첫 부분에 있는 핵심 코드를 주의하십시오.
String regKeyString ="HKEY_LOCAL_MACHINE\\SOFTWARE\\Rational Software\\Rational Test\\8\\Rational FT Install Directory"; String regValueString = getOperatingSystem().getRegistryValue(regKeyString); JOptionPane.showMessageDialog(null, regValueString,"String Registry Value",1);
첫 번째 행에서는 추출할 레지스트리 값을 포함하는 String 변수 유형을 작성합니다. 두 번째 행에서는 명령을 실행하고 이를 String 유형의 변수인 regValueString에 저장합니다. 세 번째 행에서는 JOptionPane.showMessageDialog 클래스를 사용하여 화면의 메시지 상자에 레지스트리 값을 표시합니다. 이 마지막 클래스에 익숙하지 않은 경우 Functional Tester에서 사용할 수 있으려면 Java Swing 클래스를 가져와야 합니다. 스크립트 맨 위에 있는 마지막 import 명령문을 참조하십시오.
두 번째 세그먼트에서는 int 유형의 값을 추출합니다. 예제에서, 단순 유형의 int는 정수 오브젝트로 변환되어 JOptionPane 대화 상자에 표시될 수 있습니다. 그렇지 않으면 코드는 첫 번째 세그먼트와 동일합니다.
명령 모두에서는 실패할 경우 NoSuchRegistryKeyException을 리턴합니다. 그러므로 예제에서 처럼 try/catch 블록으로 이 메소드를 랩핑하는 것이 좋습니다. 레지스트리 키를 존재하지 않는 값으로 변경한 후 스크립트를 실행할 수 있습니다. 키를 찾을 수 없음을 표시하는 오류 메시지가 표시됩니다.