사용자 정의 파일

확장자가 .rftcust인 외부 사용자 정의 파일에서 프록시, TestObjects, 값 및 값 관리자와 같이 확장 가능한 컴포넌트를 지정할 수 있습니다. 파일이 배치된 후 확장된 해당 컴포넌트는 Functional Tester 프레임워크의 일부가 됩니다. 기본 사용자 정의 파일인 rational_ft.rftcustFunctional Tester 설치 디렉토리 또는 사용자 정의 디렉토리에 있습니다.

사용자 정의 파일을 여러 개 작성할 수 있습니다. Functional Tester를 시작하면 테스터가 모든 사용자 정의 파일을 읽고 공유 메모리에 세부사항을 저장합니다. 사용자 정의 파일에 대한 자세한 참조가 공유 메모리에 작성됩니다.

사용자 정의 파일 구문

사용자 정의 파일은 <Section></Section> 태그로 표시된 여러 섹션이 있는 XML 파일입니다. 섹션마다 이름이 있으며 태그 사이에 컨텐츠가 들어 있습니다. 다음 예제는 기본 섹션을 표시합니다.

<Section L=".ConfigFileSection">
	<Name>Section Name</Name>
         .
         .
         Section content
         .
</Section >

섹션은 선택적이며 사용자 정의 파일에 빈 섹션을 삽입할 수도 있습니다. 섹션마다 고유한 구문을 가집니다. 컴포넌트 모델 둘 다(Java™ 및 .NET )에서 구현해야 하는 섹션 컴포넌트의 경우 Java 및 .NET에서 각각 사용할 두 개의 <ComponentModel> 태그가 있어야 합니다.

<ComponentModel L=".ComponentModel">
       <Name>Java</Name>
</ComponentModel>
<ComponentModel L=".ComponentModel">
       <Name>Net</Name>
</ComponentModel>

proxies 섹션은 가장 일반적으로 사용되는 섹션입니다. 여기에는 배치된 프록시 클래스 및 프록시가 사용되는 연관된 테스트할 응용프로그램(AUT) 클래스 이름을 지정하는 데 사용되는 각 테스트 도메인의 <DomainImplementation> 태그가 들어 있습니다. <DomainImplementation> 태그에서, 설정되어 있는 각 프록시 클래스에 <Obj L=".Proxy"> 태그가 사용되며 <UsedBy> 태그는 AUT 제어의 클래스 이름을 지정합니다.

비슷한 제어에서 동일한 프록시를 사용하려면 단일 프록시 클래스에서 둘 이상의 <UsedBy> 태그를 가질 수 있습니다.

태그의 요구사항을 충족하고 확장 컴포넌트가 Functional Tester 프레임워크에 배치되도록 <Section> 태그를 적절히 사용해야 합니다.

기본 사용자 정의의 전체 구문

다음은 기본 사용자 정의 파일의 전체 구문입니다.

<?xml version="1.0" encoding="UTF-8"?>
<ConfigFile L=".ConfigFile">
	
	<--Proxy Section: all the proxies are defined here domain wise-->
	<Section L=".ConfigFileSection">
		<Name>proxies</Name>
		<Val L=".ProxyManager">
			<DomainImplementation L=".DomainImplementation">
				<Name>Java</Name>
				<Obj L=".Proxy">
					<ClassName></ClassName>
					<Replaces/>
					<UsedBy></UsedBy>
					.
					.
				</Obj>
				.
				.
			</DomainImplementation>
			<DomainImplementation L=".DomainImplementation">
				<Name>Net</Name>
				<Obj L=".Proxy">
					<ClassName></ClassName>
					<Replaces/>
					<UsedBy></UsedBy>
					.
					.
				</Obj>
				.
				.
			</DomainImplementation>
			<DomainImplementation L=".DomainImplementation">
				<Name>Win</Name>
				<Obj L=".Proxy">
					<ClassName></ClassName>
					<Replaces/>
					<UsedBy></UsedBy>
					.
					.
				</Obj>
				.
				.
			</DomainImplementation>
			.
			.
		</Val>
	</Section>

	
	<--ValueManager Section: all newly defined Value and Valuemanager classes are defined here -->
	<Section L=".ConfigFileSection">
		<Name>valueManagers</Name>
		<Val L=".ValueManagerManager">
			<ComponentModel L=".ComponentModel">
				<Name>Java</Name>
				<Obj L=".ValueManager">
					<Id></Id>
					<ValueClass></ValueClass>
					<Manager></Manager>
				</Obj>
			</ComponentModel>
			<ComponentModel L=".ComponentModel">
				<Name>Net</Name>
				<Obj L=".ValueManager">
					<Id></Id>
					<ValueClass></ValueClass>
					<Manager></Manager>
				</Obj>
			</ComponentModel>
		</Val>
	</Section>
	
	<--Value Converter Section: -->
	<Section L=".ConfigFileSection">
		<Name>valueConverters</Name>
		<Val L=".ValueConverterManager">
		</Val>
	</Section>


	<--Property Converter Section: -->
	<Section L=".ConfigFileSection">
		<Name>propertyConverters</Name>
		<Val L=".PropertyConverterManager">
			<ComponentModel L=".ComponentModel">
				<Name>Java</Name>
				<Obj L=".PropertyConverter">
					<Property></Property>
					<Converter></Converter>
				</Obj>
			</ComponentModel>
			<ComponentModel L=".ComponentModel">
				<Name>Net</Name>
				<Obj L=".PropertyConverter">
					<Property></Property>
					<Converter></Converter>
				</Obj>
			</ComponentModel>
		</Val>
	</Section>

	<--Options Converter Section: -->
	<Section L=".ConfigFileSection">
		<Name>options</Name>
		<Val L=".Options">
			<Obj L=".Option">
				<Name></Name>
				<Type></Type>
				<ReadOnly></ReadOnly>
				<DefaultValue/>
				<Description></Description>
				<Label/>
				<Category></Category>
				<LegalValues/>
			</Obj>
		</Val>
	</Section>

	<-- RoleMap Section: -->
	<Section L=".ConfigFileSection">
		<Name>roleMap</Name>
		<Val L=".RoleMap">
			<Role L=".Role">
				<Name></Name>
				<Icon></Icon>
			</Role>
		</Val>
	</Section>

	<--TestObject Section: canonical name for all the newly created testobjects defined here -->
	<Section L=".ConfigFileSection">
		<Name>testObjects</Name>
		<Val L=".TestObjectManager">
			<ComponentModel L=".ComponentModel">
				<Name>Java</Name>
				<Obj L=".TestObject">
					<CanonicalName></CanonicalName>
					<TestObject></TestObject>
				</Obj>
				.
				.
			</ComponentModel>
			<ComponentModel L=".ComponentModel">
				<Name>Net</Name>
				<Obj L=".TestObject">
					<CanonicalName></CanonicalName>
					<TestObject></TestObject>
				</Obj>
				.
				.
			</ComponentModel>
		</Val>
	</Section>

</ConfigFile>

피드백