프록시 모델

Functional Tester는 두 가지 요소, 즉 프록시 오브젝트와 테스트 오브젝트를 통해 테스트할 응용프로그램(AUT) 제어와 상호작용합니다.
도메인 아키텍처

프록시 오브젝트를 통한 상호작용

프록시 오브젝트는 테스트할 실제 제어의 랩퍼 클래스와 비슷합니다. 모든 Functional Tester 프레임워크와 AUT 제어와의 통신은 이들 프록시 오브젝트를 통해 이루어집니다. 프록시 오브젝트는 테스트할 제어에 액세스할 수 있고 정보를 조회할 수 있는 곳에서 작성되어 배치됩니다. 프록시는 AUT에서 GUI 테스트 오브젝트에 사용할 규정된 Functional Tester 인터페이스를 구현하는 Java™ 또는 C# 클래스로 작성됩니다. 응용프로그램을 테스트에 사용하면 프록시 클래스가 응용프로그램에 로드되어 응용프로그램의 일부가 됩니다. 프록시 오브젝트는 응용프로그램의 기본 오브젝트인 실제 GUI 테스트 오브젝트를 포괄하여 Functional Tester가 테스트할 수 있게 합니다.

Functional Tester 프레임워크는 새 제어를 테스트하는 것을 지원하기 위해 새 ProxyObject 클래스 작성 또는 사용 가능한 모든 ProxyObject 클래스 확장을 지원합니다.

TestObject를 통한 상호작용

TestObject는 테스트할 제어의 스크립트 측 인터페이스 오브젝트입니다. 제어는 테스트 스크립트에 TestObject로 공개됩니다. 예를 들면, 단추 제어는 GuiTestObject로 공개됩니다. 대화 상자 및 프레임과 같은 최상위 레벨 제어는 TopLevelTestObject로 공개됩니다.

따라서 상응하는 ProxyObject를 통해 TestObject 메소드가 실행됩니다. TestObject는 Functional Tester 클라이언트 측에 상주합니다. TestObject에는 ProxyObject에 대한 참조가 있어 테스트할 AUT 제어를 참조합니다.

프록시
모델

Java, HTML, .Net, Win32, Siebel 및 SAP과 같이 Functional Tester가 지원하는 각 테스팅 환경에서 도메인 오브젝트가 설정됩니다. 각 도메인에는 지원되는 모든 AUT 제어에 사용할 ProxyObject 클래스가 있습니다. ProxyObject 클래스와 AUT 제어 간의 맵핑 정보는 Functional Tester 설치 디렉토리의 사용자 정의 파일에 저장됩니다. 이 사용자 정의 파일은 Functional Tester가 주어진 모든 AUT 제어에 사용되는 ProxyObject를 판별하는 디렉토리 역할을 합니다.

주: 기본 사용자 정의 맵핑 파일은 rational_ft.rftcust입니다. 확장자가 .rftcust인 도메인에 따라 다른 기타 사용자 정의 파일도 있습니다.

ProxyObject를 확장하여 지원되지 않는 UI 제어를 지원하도록 새 ProxyObject 클래스를 작성할 수도 있습니다. 예를 들어 .Net 2.0 DataGridView 제어를 지원하기 위해서 새 프록시 클래스 Rational.Test.Ft.Domain.Net.DataGridViewProxy를 작성하고 해당 맵핑 항목을 rational_ft.rftcust 파일에 삽입할 수 있습니다. 다음 코드는 사용자 정의 파일에서 갱신된 섹션의 예입니다.

<Obj L=".Proxy">
<ClassName>[WhidbeyControls]Rational.Test.Ft.Domain.Net.DataGridViewProxy</ClassName>
	<Replaces/>
		<UsedBy>[System.Windows.Forms]System.Windows.Forms.DataGridView</UsedBy>
</Obj>
관련 개념
프로세스 모델
상위 레벨 상호작용
테스트할 응용프로그램 상호작용

피드백