QTP/UFT 자동화 프레임워크: 데이터 기반, 키워드 기반 및 하이브리드
⚡ 스마트 요약
자동화 프레임워크 QTP/UFT 테스트 스크립트, 데이터 및 재사용 가능한 함수를 체계적으로 구성하여 하나의 테스트로 여러 경우를 커버할 수 있도록 합니다. 데이터 기반, 키워드 기반 및 하이브리드 설계는 각각 다른 유형의 입력과 재사용 가능한 로직 조합에 적합합니다.
데이터 기반 프레임워크
데이터 기반 프레임워크는 입력 데이터와 출력 데이터의 다양한 조합에 따라 작동하는 프레임워크입니다.
다양한 데이터 조합을 전달하는 한 가지 방법은 다음과 같습니다. 매개변수화이 방법에서는 다양한 특징을 활용합니다. QTP.
그러나 DDF에서는 매개변수화를 수행하기 위한 스크립트가 작성됩니다. 이러한 종류의 프레임워크는 AUT의 기능을 여러 입력으로 테스트하고 해당 출력을 캡처해야 할 때 유용합니다. 이러한 입력은 데이터베이스, Excel과 같은 외부 파일에서 읽을 수 있습니다. Outlook텍스트 파일 등과 같은 입력값과 그에 따른 출력값은 아래 그림과 같이 해당 외부 소스에 다시 기록됩니다.
데이터 기반 프레임워크의 일반적인 단계는 다음과 같습니다.
- 준비 테스트 케이스 테스트 중인 애플리케이션의 경우
- AUT에서 OR로 개체 추가
- 테스트 케이스를 기반으로 스크립트 작성
이번에 UFT 지도 시간본 연구에서는 외부 테스트 데이터 소스로 엑셀을 활용하여 샘플 테스트 케이스에 대한 데이터 기반 프레임워크 설계를 개발할 것입니다.
1단계) 테스트 대상 애플리케이션에 대한 테스트 케이스를 준비합니다.
테스트 케이스: 주문 번호를 열고 해당 주문의 고객 이름을 가져옵니다. 다른 주문 번호에 대해 동일한 프로세스를 반복합니다.
외부 소스: 엑셀 파일
이 예제의 외부 소스는 Excel 파일입니다. VB 스크립트는 다음과 같습니다. OpenText 기능 테스트 (UFT One은 이전에는 마이크로 포커스였습니다. UFT테스트 데이터를 읽으려면 Excel 파일을 열 수 있는 코드를 작성해야 합니다. 이는 계층적인 방식으로 구현할 수 있습니다.
1. Excel 파일이 먼저 응용 프로그램으로 열립니다.
2. 그런 다음 지정된 위치에서 통합 문서를 열어야 합니다.
3. 테스트 데이터가 있는 시트.
4. 마지막으로 셀을 읽어야 합니다.
2단계) AUT의 객체를 OR에 추가합니다.
테스트 케이스가 준비되면 필요한 모든 개체를 저장소에 추가하기 시작합니다. 테스트 케이스에서 추가해야 할 객체는 다음과 같습니다.
1. "폴더 열기" 아이콘이 항공편 예약 신청:
2. "폴더 열기" 아이콘을 클릭하면 나타나는 "주문 번호" 확인란:
3. 주문 번호의 WinEdit 상자(숫자를 입력하는 곳):
4. 확인 버튼:
5. "이름" 필드는 WinEdit 상자입니다. 이 필드는 특정 주문 번호에 대해 "확인" 버튼을 클릭하면 이름으로 채워집니다.
필요한 개체가 모두 추가되면 개체 저장소가 다음과 같이 표시됩니다.
3단계) 테스트 케이스를 기반으로 스크립트를 작성합니다.
스크립트를 실행하기 전에 테스트 데이터가 포함된 Excel 파일이 저장되고 닫혀 있는지 확인하십시오.
아래 스크립트는 Excel에서 주문 번호를 읽어 변수 "vOrder"를 통해 애플리케이션에 할당하고 변수 "vName"을 통해 애플리케이션에서 고객 이름을 쓰는 것입니다.
엑셀 이름: FlightDDF.xlsx
시트 이름: 시트1
산출
위 스크립트가 실행되면 다음과 같이 Excel에서 출력을 얻을 수 있습니다.
데이터 기반 프레임워크는 다음과 같은 방법으로도 개발할 수 있습니다. 설명 프로그래밍.
데이터베이스를 DDF의 외부 소스로 사용
외부 소스가 데이터베이스인 경우 다음 단계를 사용하여 동일한 테스트 사례를 실행할 수 있습니다.
- VBScript를 작성하여 데이터베이스 연결 설정
- VBScript를 사용하여 레코드세트나 테이블을 엽니다.
- 원하는 필드를 여는 VBScript
- 특정 셀은 필드에서 읽혀집니다.
스크립트
To Establish a Microsoft Database connection
운전자 = {Microsoft 액세스 드라이버(*.mdb)}; DBQ =
레코드 세트 이름: OpenOrder
필드 이름: 주문 번호, 고객 이름
PS : Microsoft Access 2010은 아래 스크립트를 사용하여 연결할 수 없습니다.
산출
DDF의 장점
- 단일 테스트로 대량의 테스트 데이터를 읽고 외부 파일에 쓸 수 있습니다.
- Loop 문은 여러 반복에 대해 동일한 단계를 반복하는 데 사용됩니다. 따라서 코딩 노력이 줄어 듭니다.
- 데이터를 외부 파일에 직접 읽고 쓰기 때문에 사용하기 위해 데이터를 복사하거나 붙여넣거나 내보낼 필요가 없습니다.
- 테스트 데이터는 외부 파일에서 읽을 수 있으며 출력은 다른 외부 파일에 쓸 수 있습니다.
DDF의 단점
- 이 프레임워크를 개발하려면 스크립팅 지식이 필요합니다.
- 때때로 데이터베이스와 같은 외부 소스에서 가져온 데이터의 양이나 조합 때문에 시스템 속도가 느려지거나 심지어 오류가 발생할 수 있습니다. QTP
키워드 기반 프레임워크
키워드 기반 프레임워크는 키워드를 중심으로 테스트를 진행하는 프레임워크입니다. 키워드는 다음을 의미합니다. 사용자 정의 함수. 이 프레임워크에서는 특정 테스트 단계나 테스트 케이스를 수행하기 위해 키워드가 생성됩니다. 그런 다음 이러한 키워드는 드라이버 테스트로 호출되어 동일한 테스트에서 여러 테스트 사례를 실행합니다.
일반적으로 프레임워크는 테스트를 실행하기 위해 세 가지 방법으로 개발될 수 있습니다.
- 녹화 및 실행 시험
- 로컬 저장소에 개체를 추가하고 모든 테스트 단계에 대한 스크립트를 작성합니다.
- 모든 테스트 단계에 대한 설명 프로그래밍 작성
이 튜토리얼에서는 테스트를 기록하고 실행하여 KDF를 개발합니다.
우리의 목표는 애플리케이션 로그인, 주문 삽입, 주문 열기, 주문 삭제 및 애플리케이션 닫기와 같은 XNUMX가지 다른 테스트 사례에 대해 단일 테스트를 실행하는 것입니다. 따라서 이러한 테스트 사례에 대한 테스트 단계를 기록하고 각각 Login, InsertOrder, OpenOrder, DeleteOrder 및 CloseApp 키워드를 사용하여 함수를 생성합니다.
테스트 사례 1: 애플리케이션에 로그인
예어: 로그인 ()
녹음된 스크립트:
테스트 사례 2: 주문 삽입
예어:삽입순서()
녹음된 스크립트:
테스트 사례3: 주문 개시
예어:오픈오더()
녹음된 스크립트:
테스트 사례4: 주문 삭제
예어:삭제주문()
녹음된 스크립트:
테스트 사례5: 애플리케이션 닫기
예어:클로즈앱()
녹음된 스크립트:
다양한 테스트 케이스를 위해 생성된 함수는 함수 라이브러리에 저장되며 기본 테스트와 연결됩니다. 메인 테스트에서 필요한 테스트 케이스에 대한 키워드를 호출함으로써 메인 테스트에서 드라이버 스크립트의 크기를 줄이는 것으로 충분합니다.
이 간단한 프레임워크의 드라이버 스크립트는 다음과 같습니다.
위 스크립트를 실행하면 단일 테스트에서 XNUMX개 테스트 사례 모두에 대한 실제 결과를 얻을 수 있습니다.
장점
- 해당 키워드를 호출하기만 하면 단일 테스트에서 원하는 수의 테스트 사례를 실행할 수 있습니다.
- 모든 웹/윈도우 객체에 대한 일반적인 설명적 프로그래밍을 작성하고 이를 키워드로 호출하면 다양한 동적 애플리케이션에 대해 동일한 테스트를 실행하는 데 도움이 됩니다.
- 드라이버 스크립트의 크기를 줄입니다.
단점
- 실행할 테스트 케이스 수가 매우 적다면 이러한 프레임워크를 개발하는 데 걸리는 시간은 매우 길어집니다.
- 동일한 테스트에서 여러 응용 프로그램에 대해 KDF를 설계할 때 단계 기록이 항상 사용되는 것은 아닙니다.
하이브리드 프레임워크
하이브리드 프레임워크는 데이터 기반 프레임워크(DDF)와 키워드 기반 프레임워크(KDF)를 결합한 것으로, 여러 입력값을 가진 여러 테스트 케이스를 하나의 테스트에서 실행할 수 있습니다.
이 문서에서는 KDF에서 사용되는 동일한 테스트 케이스들을 하나의 테스트로 실행합니다. 모든 테스트 케이스의 키워드와 스크립트는 KDF와 동일합니다. 다만, TC3: 주문 열기 테스트 케이스는 매개변수화되었습니다. 따라서 이 테스트 케이스의 스크립트는 엑셀 파일에서 주문 번호를 입력받아 고객 이름을 엑셀 파일에 기록하도록 작성되었습니다.
테스트 사례 1: 애플리케이션에 로그인
예어: 로그인 ()
테스트 사례 2: 주문 삽입
예어:삽입순서()
테스트 사례 3: 여러 주문 번호에 대한 주문 열기
예어:오픈오더()
상품 설명 여기서는 DDF 개발에 사용된 것과 동일한 스크립트가 사용되어 여러 반복에 대한 테스트 사례를 달성합니다.
스크립트:
테스트 사례4: 주문 삭제
예어:삭제주문()
테스트 사례5: 애플리케이션 닫기
예어:클로즈앱()
이 간단한 방법을 따르면 TC3의 매개변수화가 달성됩니다. 해당되는 경우 다른 모든 테스트 케이스도 동일한 테스트에서 매개변수화할 수 있습니다.
위 예시는 하이브리드 프레임워크를 설계하는 매우 간단한 방법입니다. 동일한 프레임워크는 설명적 프로그래밍을 통해서도 구현할 수 있습니다.
장점
- 하이브리드 프레임워크로 설계된 테스트를 실행하는 데 걸리는 시간은 다른 프레임워크에 비해 상대적으로 적습니다.
- 이는 동일한 테스트 스위트에서 특정 테스트 케이스와 연관된 모든 테스트 케이스 및 입력이 필요할 때 사용할 수 있습니다.
불리
- 서로 다른 프레임워크를 결합하는 것에 대한 명확한 지식이 필요합니다.




















