how perform etl testing using informatica powercenter tool
알려진 사실은 ETL 테스트 모든 것의 중요한 측면 중 하나입니다 비즈니스 인텔리전스 (BI) 기반 애플리케이션. 품질 보증 및 승인을 받아 비즈니스에 적용하려면 BI 애플리케이션을 사전에 테스트해야합니다.
ETL 테스트의 주요 목표는 IS xtract, 티 ransform & 엘 oad 기능은 비즈니스 요구 사항에 따라 작동하고 성능 표준과 동기화됩니다.
ETL 테스트를 살펴보기 전에 컴퓨팅 , ETL과 Informatica가 무엇인지 아는 것이 중요합니다.
학습 내용 :
- 이 ETL 튜토리얼에서 배울 내용 :
- Informatica PowerCenter ETL 테스트 도구 :
- Informatica와 관련된 ETL 테스트 이해 :
- Informatica의 ETL 테스트 분류 :
- Informatica를 ETL 도구로 사용할 때의 이점 :
- Informatica ETL 테스트에 도움이되는 몇 가지 유용한 팁 :
- 결론:
- 추천 도서
이 ETL 튜토리얼에서 배울 내용 :
- ETL, Informatica 및 ETL 테스트의 기초.
- Informatica와 관련된 ETL 테스트 이해.
- Informatica의 ETL 테스트 분류.
- Informatica ETL 테스트를위한 샘플 테스트 사례.
- Informatica를 사용하여 얻을 수있는 이점 ETL 도구 .
- 테스트에 도움이되는 팁과 요령.
컴퓨팅에서 ETL (추출, 변환,로드)은 데이터베이스 사용, 특히 다음을 수행하는 데이터웨어 하우징 프로세스를 나타냅니다.
- 데이터 추출 – 동종 또는 이기종 데이터 소스에서 데이터를 추출합니다.
- 데이터 변환 – 데이터를 필수 유형으로 형식화합니다.
- 데이터로드 – 장기간 사용을 위해 데이터를 영구 위치로 이동하고 저장합니다.
Informatica PowerCenter ETL 테스트 도구 :
Informatica PowerCenter는 Informatica Corporation의 강력한 ETL 도구입니다. 이는 거의 모든 비즈니스 시스템의 데이터를 액세스, 검색 및 통합 할 수있는 단일 통합 엔터프라이즈 데이터 통합 플랫폼입니다.
이는 거의 모든 비즈니스 시스템에서 모든 형식의 데이터를 액세스, 검색 및 통합하고 해당 데이터를 모든 속도로 기업 전체에 제공하기위한 단일 통합 엔터프라이즈 데이터 통합 플랫폼입니다. 을 통하여 Informatica PowerCenter , 엔드 투 엔드 ETL 작업을 수행하는 워크 플로를 만듭니다.
Informatica PowerCenter 다운로드 및 설치 :
Informatica PowerCenter 9.x를 설치 및 구성하려면 단계별 지침이있는 아래 링크를 사용하십시오.
=> Informatica PowerCenter 9 설치 및 구성 가이드
Informatica와 관련된 ETL 테스트 이해 :
ETL 테스터는 종종 Informatica에서 테스트 할 항목과 필요한 테스트 범위에 대한 관련 질문을 가지고 있습니까?
Informatica와 관련된 ETL 테스트를 수행하는 방법에 대해 살펴 보겠습니다.
Informatica ETL 테스트에서 본질적으로 다루어야하는 주요 측면은 다음과 같습니다.
- Informatica 워크 플로 및 해당 구성 요소의 기능 테스트 기본 매핑에 사용되는 모든 변환.
- 데이터 완전성을 확인하려면 (예 : 예상 데이터가 잘림 및 데이터 손실없이 대상에로드되는지 확인)
- 예상 시간 제한 (예 : 워크 플로우 성능 평가) 내에 데이터가 대상에로드되고 있는지 확인
- 워크 플로에서 유효하지 않거나 원치 않는 데이터가 대상에로드되지 않도록합니다.
Informatica의 ETL 테스트 분류 :
테스터를 더 잘 이해하고 쉽게 이해할 수 있도록 Informatica의 ETL 테스트는 두 가지 주요 부분으로 나눌 수 있습니다.
컴퓨터에서 스크린 샷을 찍는 프로그램
# 1) 높은 수준의 테스트
# 2) 세부 테스트
첫째, 높은 수준의 테스트에서 :
- Informatica 워크 플로 및 관련 개체가 유효한지 여부를 확인할 수 있습니다.
- 워크 플로가 실행 중 성공적으로 완료되는지 확인합니다.
- 모든 필수 세션 / 작업이 워크 플로에서 실행되고 있는지 확인합니다.
- 데이터가 원하는 대상 디렉터리에로드되고 예상되는 파일 이름 (워크 플로가 파일을 만드는 경우) 등으로로드되는지 확인합니다.
간단히 말해, 높은 수준의 테스트에는 모든 기본 온 전성 검사가 포함되어 있다고 말할 수 있습니다.
다음 부분 즉, Informatica의 세부 테스트 에서는 Informatica에 구현 된 논리가 결과 및 성능 측면에서 예상대로 작동하는지 심층적으로 검증합니다.
- 각 변환이 잘 작동하는지 확인하는 필드 수준에서 출력 데이터 유효성 검사를 수행해야합니다.
- 각 처리 수준에서 레코드 수가 있는지 확인하고 마지막으로 대상이 예상대로인지 확인합니다.
- 세션의 소스 / 타겟 통계에서 소스 한정자 및 타겟과 같은 요소를 철저히 모니터링
- Informatica 워크 플로의 실행 기간이 예상 실행 시간과 같은지 확인하십시오.
요약하면, 세부 테스트에는 Informatica 워크 플로 및 관련 데이터 흐름에 대한 엄격한 종단 간 유효성 검사가 포함되어 있다고 말할 수 있습니다.
여기에 예를 들어 보겠습니다.
다른 제품에 대한 데이터가 포함 된 플랫 파일이 있습니다. 제품 이름, 설명, 카테고리, 만료일, 가격 등과 같은 세부 정보를 저장합니다.
내 요구 사항은 파일에서 각 제품 레코드를 가져오고 각 레코드에 해당하는 고유 한 제품 ID를 생성하여 대상 데이터베이스 테이블에로드하는 것입니다. 또한 'C'카테고리에 속하거나 만료 날짜가 현재 날짜보다 이전 인 제품은 제외해야합니다.
내 플랫 파일 (소스)은 다음과 같습니다.
(노트 :크게 보려면 이미지를 클릭하십시오)
위에서 언급 한 내 요구 사항에 따라 내 데이터베이스 테이블 (대상)은 다음과 같아야합니다.
테이블 이름 : Tbl_Product
Prod_ID (기본 키) | 상품명 | Prod_description | Prod_category | Prod_expiry_date | Prod_price |
---|---|---|---|---|---|
1001 | 알파벳 | 이것은 ABC 제품입니다. | 미디엄 | 2017 년 8 월 14 일 | 150 |
1002 | DEF | 이것은 DEF 제품입니다. | 에스 | 2018 년 10 월 6 일 | 700 |
1003 | PQRS | 이것은 제품 PQRS입니다. | 미디엄 | 2019 년 5 월 23 일 | 1500 년 |
이제 우리는 ETL 요구 사항에 대한 솔루션을 얻기 위해 Informatica 워크 플로를 개발했습니다.
기본 Informatica 매핑은 플랫 파일에서 데이터를 읽고, 제품 범주가 'C'또는 만료 날짜 인 행을 삭제하는 라우터 변환을 통해 데이터를 전달한 다음 시퀀스 생성을 사용하여 고유 한 기본 키를 생성합니다. 제품 테이블의 Prod_ID 열에 대한 값.
마지막으로 레코드는 내 Informatica 매핑의 대상인 Product 테이블에로드됩니다.
예 :
다음은 위에서 설명한 시나리오의 샘플 테스트 사례입니다.
이러한 테스트 사례를 Informatica 테스트 프로젝트의 템플릿으로 사용하고 워크 플로의 기능에 따라 유사한 테스트 사례를 추가 / 제거 할 수 있습니다.
# 1) 테스트 케이스 ID : T001
테스트 케이스 목적 : 워크 플로 확인 – (workflow_name)
테스트 절차 :
- 워크 플로 관리자로 이동
- 워크 플로우 열기
- 워크 플로 메뉴-> 확인을 클릭합니다.
입력 값 / 테스트 데이터 : 소스와 타겟이 사용 가능하고 연결됨
소스 : (모든 소스 인스턴스 이름)
매핑 : (모든 매핑 이름)
대상 : (모든 대상 인스턴스 이름)
세션 : (모든 세션 이름)
예상 결과 : 워크 플로 관리자 상태 표시 줄의 메시지 : '워크 플로 (workflow_name)이 유효합니다.'
실제 결과: 워크 플로 관리자 상태 표시 줄의 메시지 : '워크 플로 (workflow_name)이 유효합니다.'
비고 :통과하다
테스터 의견 :
# 2) 테스트 케이스 ID : T002
테스트 케이스 목적 : 워크 플로가 성공적으로 실행되고 있는지 확인하려면
테스트 절차 :
- 워크 플로 관리자로 이동
- 워크 플로우 열기
- 워크 플로 디자이너를 마우스 오른쪽 단추로 클릭하고 워크 플로 시작을 선택합니다.
- Workflow Monitor에서 상태 확인
입력 값 / 테스트 데이터 : T001의 테스트 데이터와 동일
예상 결과 : 워크 플로 관리자의 출력 창에있는 메시지 : 작업 업데이트 : (workflow_name) (성공)
실제 결과: 워크 플로 관리자의 출력 창에있는 메시지 : 작업 업데이트 : (workflow_name) (성공)
비고 :통과하다
mp3 변환기 무료로 최고의 유튜브
테스터 의견 : 워크 플로 성공
노트 : 아래 예와 같이 워크 플로 모니터에서 워크 플로 실행 상태 (실패 / 성공)를 쉽게 확인할 수 있습니다. 워크 플로가 완료되면 상태가 워크 플로 모니터에 자동으로 반영됩니다.
위의 스크린 샷에서 워크 플로의 시작 시간과 종료 시간은 물론 성공 상태를 볼 수 있습니다.
# 3) 테스트 케이스 ID : T003
테스트 케이스 목적 : 원하는 수의 레코드가 대상에로드되고 있는지 확인하려면
테스트 절차 : 워크 플로우가 성공적으로 실행되면 데이터베이스의 대상 테이블로 이동합니다.
대상 데이터베이스 테이블의 행 수 확인
입력 값 / 테스트 데이터 : 소스 파일의 5 개 행
대상 : 데이터베이스 테이블 – (Tbl_Product)
SQL 서버에서 실행할 쿼리 : (Tbl_Product)에서 개수 (1) 선택
예상 결과 : 3 개 행 선택
실제 결과: 3 개 행 선택
비고 :통과하다
테스터 의견 :
# 4) 테스트 케이스 ID : T004
테스트 케이스 목적 : Informatica 매핑의 시퀀스 생성기가 (primary_key_column_name 예 : Prod_ID) 열
테스트 절차 : 워크 플로우가 성공적으로 실행되면 데이터베이스의 대상 테이블로 이동합니다.
Prod_ID 열에서 생성 된 고유 시퀀스를 확인하십시오.
입력 값 / 테스트 데이터 : Prod_ID 값은 소스 파일의 모든 행에 대해 비워 둡니다.
매핑의 Prod_ID 열에 매핑 된 시퀀스 생성기
시퀀스 생성기 시작 값이 1001로 설정 됨
대상 : SQL Server에서 열린 데이터베이스 테이블-(Tbl_Product)
예상 결과 : Prod_ID 열의 모든 행에 대해 채워진 1001에서 1003 사이의 값
실제 결과: Prod_ID 열의 모든 행에 대해 채워진 1001에서 1003 사이의 값
비고 :통과하다
테스터 의견 :
# 5) 테스트 케이스 ID : T005
QA 테스트에서 경력을 시작하는 방법
테스트 케이스 목적 : 제품 범주가 'C'이거나 제품이 만료 된 경우 레코드를 억제하기 위해 라우터 변환이 제대로 작동하는지 확인합니다.
테스트 절차 : 워크 플로우가 성공적으로 실행되면 데이터베이스의 대상 테이블로 이동합니다.
대상 테이블에서 쿼리를 실행하여 원하는 레코드가 억제되었는지 확인합니다.
입력 값 / 테스트 데이터 : 소스 파일의 5 개 행
대상 : 데이터베이스 테이블 – (Tbl_Product)
SQL 서버에서 실행할 쿼리 : Prod_category =’C’또는 Prod_expiry_date 인 제품에서 * 선택< sysdate ;
예상 결과 : 선택된 행 없음
실제 결과: 선택된 행 없음
비고 :통과하다
테스터 의견 : (만약에 어떠한)
# 6) 테스트 케이스 ID : T006
테스트 케이스 목적 : 워크 플로 런타임을 기록하여 워크 플로의 성능을 확인합니다.
테스트 절차 :
- 워크 플로 모니터를 열고 T001의 일부로 수행 된 실행으로 이동합니다.
- 워크 플로의 시작 시간과 종료 시간을 기록합니다.
- 종료 시간에서 시작 시간을 빼서 총 실행 시간을 계산합니다.
입력 값 / 테스트 데이터 : 워크 플로가 성공적으로 실행되었습니다.
모니터에서 워크 플로 시작 시간
모니터의 워크 플로 종료 시간입니다.
예상 결과 : 2 분 30 초
실제 결과: 2 분 15 초
비고 :통과하다
테스터 의견 : 실제 실행 시간이 예상 실행 시간의 +/- 10 % 인 경우 테스트를 '통과'로 간주합니다.
# 7) 테스트 케이스 ID : T007
테스트 케이스 목적 : 데이터 손실이 없는지 확인하기 위해 대상 테이블 열 수준에서 데이터의 유효성을 검사합니다.
테스트 절차 : 워크 플로가 성공적으로 실행되면 SQL Server로 이동합니다.
대상 테이블에서 쿼리를 실행하여 데이터 손실이 없는지 확인합니다.
입력 값 / 테스트 데이터 : 워크 플로가 성공적으로 실행되었습니다.
소스 플랫 파일의 샘플 레코드 하나.
SQL 쿼리 : Tbl_Patient에서 Top 1 *을 선택하십시오.
예상 결과 :
1 행 반환 됨
Prod_ID (기본 키) | 상품명 | Prod_description | Prod_category | Prod_expiry_date | Prod_price |
---|---|---|---|---|---|
1001 | 알파벳 | 이것은 ABC 제품입니다. | 미디엄 | 2017 년 8 월 14 일 | 150 |
실제 결과:
1 개 행이 반환되었습니다.
Prod_ID (기본 키) | 상품명 | Prod_description | Prod_category | Prod_expiry_date | Prod_price |
---|---|---|---|---|---|
1001 | 알파벳 | 이것은 ABC 제품입니다. | 미디엄 | 2017 년 8 월 14 일 | 150 |
비고 :통과하다
테스터 의견 : 실제 실행 시간이 예상 실행 시간의 +/- 10 % 인 경우 테스트를 '통과'로 간주합니다.
Informatica를 ETL 도구로 사용할 때의 이점 :
Informatica는 다음과 같은 이유로 인기 있고 성공적인 ETL 도구입니다.
- '게시'성공률이 높습니다 (거의 100 %).
- Informatica에는 린 통합을 지원하는 기능이 있습니다.
- 다른 ETL 도구와 비교할 때 적당한 가격의 도구입니다.
- 내부 작업 스케줄러와 함께 제공됩니다. 따라서 다른 ETL 도구와 같이 타사 스케줄러를 별도로 사용할 필요가 없습니다.
- 손쉬운 교육 및 도구 가용성으로 인해 Informatica가 더욱 인기를 얻었습니다.
Informatica ETL 테스트에 도움이되는 몇 가지 유용한 팁 :
- 테스트 시나리오를 실행하기 전에 테스트 데이터를 생성하십시오.
- 테스트 데이터는 사용되는 테스트 케이스와 동기화되어야합니다.
- 데이터가 제출되지 않고 잘못된 데이터가 제출되고 유효한 데이터가 Informatica 워크 플로에 대한 입력으로 제출되는 3 가지 시나리오를 모두 다루 었는지 확인하십시오.
- 필요한 모든 데이터가 대상에 완전히로드되고 있는지 테스트해야합니다. 이를 위해 위에서 설명한 T003 테스트 케이스를 샘플로 사용할 수 있습니다.
- 워크 플로가 비즈니스 규칙에 따라 모든 데이터 변환을 올바르게 수행하고 있는지 테스트하는 것은 매우 중요합니다.
- Informatica 매핑에 적용된 각 변환에 대해 출력 데이터를 확인할 체크리스트가 있어야합니다. 이렇게하면 변환이 제대로 작동하지 않는 경우 쉽게 버그를보고 할 수 있습니다.
결론:
따라서 Informatica에서 ETL 테스트를 다루기위한 템플릿으로 사용할 수있는 일부 샘플 테스트 사례를 자세히 살펴 보았습니다. 앞서 언급했듯이 프로젝트에있는 시나리오에 따라 이러한 테스트 케이스를 추가 / 제거 / 수정할 수 있습니다.
앞서 언급했듯이 프로젝트에있는 시나리오에 따라 이러한 테스트 케이스를 추가 / 제거 / 수정할 수 있습니다.
Informatica PowerCenter는 모든 데이터 통합 활동의 기반입니다.
테스트, 개발 또는 프로덕션 환경에 복사 된 데이터에 대해 스크립트없이 자동화 된 테스트를 쉽게 수행 할 수 있으며, 이것이 PowerCenter가 오늘날 가장 인기있는 ETL 도구 인 이유입니다.
저자 정보 : 이것은 Priya K의 게스트 기사입니다. 그녀는 Informatica ETL 애플리케이션을 개발하고 지원하는 데 4 년 이상의 실무 경험을 가지고 있습니다.
질문을 게시 해주세요 / 코멘트 이 ETL 도구에 대해.