etl testing data warehouse testing tutorial
ETL 테스트 / 데이터웨어 하우스 프로세스 및 과제 :
오늘은 잠시 시간을내어 테스터 친구를 위해 많이 요구되는 기술 중 하나, 즉 ETL 테스트 (추출, 변환 및로드)에 대해 테스트 형제애에 대해 설명하겠습니다.
이 튜토리얼은 ETL 테스트에 대한 완전한 아이디어와 ETL 프로세스를 테스트하기 위해 수행하는 작업을 제공합니다.
이 시리즈의 전체 목록 자습서 :
- 튜토리얼 # 1 : ETL 테스트 데이터웨어 하우스 테스트 소개 가이드
- 튜토리얼 # 2 : Informatica PowerCenter 도구를 사용한 ETL 테스트
- 튜토리얼 # 3 : ETL vs. DB 테스트
- 튜토리얼 # 4 : 비즈니스 인텔리전스 (BI) 테스트 : 비즈니스 데이터를 테스트하는 방법
- 튜토리얼 # 5 : 상위 10 가지 ETL 테스트 도구
Independent Verification and Validation이 엄청난 시장 잠재력을 얻고 있으며 많은 기업이이를 잠재적 인 비즈니스 이익으로보고있는 것으로 나타났습니다.
고객은 서비스 제공 측면에서 다양한 범위의 제품을 제공 받았으며 기술, 프로세스 및 솔루션을 기반으로 많은 영역에 배포되었습니다. ETL 또는 데이터웨어 하우스는 신속하고 성공적으로 개발되고있는 제품 중 하나입니다.
ETL 프로세스를 통해 소스 시스템에서 데이터를 가져와 비즈니스 규칙에 따라 변환 한 후 최종적으로 대상 시스템 (데이터웨어 하우스)에로드합니다. 데이터웨어 하우스는 비즈니스 의사 결정 프로세스를 지원하는 통합 데이터를 포함하는 전사적 저장소입니다. 비즈니스 인텔리전스의 일부입니다.
학습 내용 :
- 조직에 데이터웨어 하우스가 필요한 이유는 무엇입니까?
- ETL 프로세스
- ETL 테스트 기법
- ETL / 데이터웨어 하우스 테스트 프로세스
- 데이터베이스와 데이터웨어 하우스 테스트의 차이점
- ETL 테스트 과제
- 추천 도서
조직에 데이터웨어 하우스가 필요한 이유는 무엇입니까?
조직화 된 IT 관행을 갖춘 조직은 다음 단계의 기술 혁신을 기대하고 있습니다. 이제 그들은 상호 운용하기 쉬운 데이터를 사용하여 훨씬 더 운영하기 위해 노력하고 있습니다.
데이터는 모든 조직에서 가장 중요한 부분이라고 말했듯이 일상 데이터 또는 과거 데이터 일 수 있습니다. 데이터는 모든 보고서의 중추이며 보고서는 모든 중요한 관리 결정을 내리는 기준이됩니다.
대부분의 기업은 실시간 데이터와 과거 데이터를 저장하고 모니터링하기 위해 데이터웨어 하우스를 구축하기 위해 한발 더 나아가고 있습니다. 효율적인 데이터웨어 하우스를 만드는 것은 쉬운 일이 아닙니다. 많은 조직이 분산 기술에서 실행되는 서로 다른 응용 프로그램을 가진 부서를 분산했습니다.
ETL 도구는 서로 다른 부서의 서로 다른 데이터 소스를 완벽하게 통합하기 위해 사용됩니다. ETL 도구는 여러 소스에서 데이터를 추출하는 통합 자 역할을합니다. 비즈니스 변환 규칙에 따라 선호하는 형식으로 변환하고 알려진 응집 DB에로드하는 것이 데이터웨어 하우스입니다.
잘 계획되고 잘 정의되고 효과적인 테스트 범위는 원활한 변환을 보장합니다. 생산에 프로젝트의. 데이터웨어 하우스가 구체적이고 강력한 지 확인하기 위해 독립적 인 전문가 그룹에 의해 ETL 프로세스가 검증되고 검증되면 비즈니스는 실질적인 부력을 얻습니다.
ETL 또는 데이터웨어 하우스 테스트는 네 가지 서로 다른 계약으로 분류됩니다. 사용 된 기술 또는 ETL 도구에 관계없이 :
- 새로운 데이터웨어 하우스 테스트 – 새로운 DW가 구축되고 처음부터 확인됩니다. 데이터 입력은 고객 요구 사항 및 다양한 데이터 소스에서 가져오고 ETL 도구를 사용하여 새 데이터웨어 하우스를 구축하고 확인합니다.
- 마이그레이션 테스트 – 이러한 유형의 프로젝트에서 고객은 작업을 수행하는 기존 DW 및 ETL을 갖게되지만 효율성 향상을 위해 새로운 도구를 모으고 있습니다.
- 변경 요청 –이 유형의 프로젝트에서 새로운 데이터는 다른 소스에서 기존 DW에 추가됩니다. 또한 고객이 기존 비즈니스 규칙을 변경해야하거나 새 규칙을 통합해야하는 조건이있을 수 있습니다.
- 보고서 테스트 – 보고서는 모든 데이터웨어 하우스의 최종 결과이며 DW가 구축하는 기본 제안입니다. 보고서는 레이아웃, 보고서의 데이터 및 계산을 확인하여 테스트해야합니다.
ETL 프로세스
( 노트 : 이미지를 클릭하시면 크게보실 수 있습니다.)
ETL 테스트 기법
1) 데이터 변환 테스트 : 다양한 비즈니스 요구 사항 및 규칙에 따라 데이터가 올바르게 변환되었는지 확인합니다.
2) 소스 대 타겟 수 테스트 : 대상에로드 된 레코드 수가 예상 개수와 일치하는지 확인합니다.
3) 소스-타겟 데이터 테스트 : 모든 프로젝션 데이터가 데이터 손실 및 잘림없이 데이터웨어 하우스에로드되었는지 확인합니다.
4) 데이터 품질 테스트 : ETL 애플리케이션이 적절하게 거부하고 기본값으로 대체하며 유효하지 않은 데이터를보고하는지 확인하십시오.
5) 성능 테스트 : 개선 된 성능과 확장 성을 확인하기 위해 규정 된 예상 시간 프레임 내에 데이터웨어 하우스에 데이터가로드되었는지 확인합니다.
.torrent를 여는 방법
6) 생산 검증 테스트 : 프로덕션 시스템의 데이터를 검증하고 소스 데이터와 비교합니다.
7) 데이터 통합 테스트 : 다양한 소스의 데이터가 대상 시스템에 제대로로드되었는지 확인하고 모든 임계 값을 확인합니다.
8) 애플리케이션 마이그레이션 테스트 :이 테스트에서는 ETL 애플리케이션이 새 상자 또는 플랫폼으로 이동할 때 제대로 작동하는지 확인합니다.
9) 데이터 및 제약 확인 :이 경우 데이터 유형, 길이, 인덱스, 제약 조건 등이 테스트됩니다.
10) 중복 데이터 확인 : 대상 시스템에 중복 데이터가 있는지 테스트합니다. 중복 데이터는 잘못된 분석 보고서로 이어질 수 있습니다.
위의 ETL 테스트 방법 외에도 시스템 통합 테스트, 사용자 수용 테스트, 증분 테스트, 회귀 테스트, 재 테스트 및 탐색 테스트와 같은 다른 테스트 방법도 모든 것이 원활하고 신뢰할 수 있는지 확인하기 위해 수행됩니다.
ETL / 데이터웨어 하우스 테스트 프로세스
Independent Verification and Validation에있는 다른 테스트와 마찬가지로 ETL도 동일한 단계를 거칩니다.
- 요구 사항 이해
- 검증
- 테스트 추정 테이블 수, 규칙의 복잡성, 데이터 볼륨 및 작업 성능을 기반으로합니다.
- 테스트 계획 테스트 견적 및 비즈니스 요구 사항의 입력을 기반으로합니다. 여기에서 범위 내에있는 것과 범위를 벗어난 것을 식별해야합니다. 또한이 단계에서 종속성, 위험 및 완화 계획을 찾습니다.
- 테스트 케이스 디자인 사용 가능한 모든 입력에서 시나리오를 테스트합니다. 또한 매핑 문서와 SQL 스크립트를 설계해야합니다.
- 모든 테스트 케이스가 준비되고 승인되면 테스트 팀은 사전 실행 검사를 수행하고 테스트 데이터 준비 시험용
- 마지막으로 종료 기준이 충족 될 때까지 실행됩니다. 따라서 실행 단계에는 ETL 작업 실행, 작업 실행 모니터링, SQL 스크립트 실행, 결함 로깅, 결함 재 테스트 및 회귀 테스트가 포함됩니다.
- 성공적으로 완료되면 요약 보고서가 준비되고 마감 프로세스가 완료됩니다. 이 단계에서는 작업 또는 코드를 다음 단계로 승격하기 위해 사인 오프가 제공됩니다.
처음 두 단계, 즉 요구 사항 이해 및 검증은 ETL 테스트 프로세스의 사전 단계로 간주 할 수 있습니다.
따라서 주요 프로세스는 다음과 같이 나타낼 수 있습니다.
실제 테스트를 시작하기 전에 이해 관계자가 상호 수용해야하는 테스트 전략을 정의 할 필요가 있습니다. 잘 정의 된 테스트 전략은 테스트 목표를 충족하는 올바른 접근 방식을 따랐는지 확인합니다.
ETL / 데이터웨어 하우스 테스트에는 테스트 팀이 SQL 문을 광범위하게 작성하거나 개발 팀에서 제공하는 SQL을 조정해야 할 수 있습니다. 어쨌든 테스트 팀은 해당 SQL 문을 사용하여 얻으려는 결과를 알고 있어야합니다.
데이터베이스와 데이터웨어 하우스 테스트의 차이점
데이터베이스 테스트와 데이터웨어 하우스 사실은 둘 다 테스트에서 다른 방향을 유지한다는 것입니다.
- 데이터베이스 테스트는 일반적으로 OLTP (온라인 트랜잭션 처리) 유형의 데이터베이스에서 더 작은 규모의 데이터를 사용하여 수행되는 반면, 데이터웨어 하우스 테스트는 OLAP (온라인 분석 처리) 데이터베이스와 관련된 데이터로 대량으로 수행됩니다.
- 데이터베이스 테스트에서는 일반적으로 데이터가 균일 한 소스에서 지속적으로 주입되는 반면 데이터웨어 하우스 테스트에서는 대부분의 데이터가 순차적으로 일관성이없는 다른 종류의 데이터 소스에서 제공됩니다.
- 일반적으로 데이터베이스 테스트에서는 CRUD (만들기, 읽기, 업데이트 및 삭제) 작업 만 수행하는 반면 데이터웨어 하우스 테스트에서는 읽기 전용 (선택) 작업을 사용합니다.
- 정규화 된 데이터베이스는 DB 테스트에 사용되는 반면, 사기 DB는 데이터웨어 하우스 테스트에 사용됩니다.
모든 종류의 데이터웨어 하우스 테스트를 위해 수행해야하는 많은 범용 검증이 있습니다.
다음은이 테스트에서 유효성 검사에 필수적인 것으로 취급되는 개체 목록입니다.
- 소스에서 대상으로의 데이터 변환이 예상대로 작동하는지 확인
- 예상 데이터가 대상 시스템에 추가되었는지 확인
- 모든 DB 필드 및 필드 데이터가 잘리지 않고로드되었는지 확인
- 레코드 수 일치에 대한 데이터 체크섬 확인
- 거부 된 데이터에 대해 모든 세부 사항과 함께 적절한 오류 로그가 생성되는지 확인하십시오.
- NULL 값 필드 확인
- 중복 데이터가로드되지 않았는지 확인
- 데이터 무결성 확인
=> 알고 ETL / 데이터웨어 하우스 테스트와 데이터베이스 테스트의 차이점 .
ETL 테스트 과제
이 테스트는 기존 테스트와는 상당히 다릅니다. 데이터웨어 하우스 테스트를 수행하는 동안 직면 한 많은 문제가 있습니다.
프로젝트에서 경험 한 몇 가지 과제는 다음과 같습니다.
- 호환되지 않는 중복 데이터
- ETL 프로세스 중 데이터 손실
- 포괄적 인 테스트 베드를 사용할 수 없음
- 테스터는 스스로 ETL 작업을 실행할 수있는 권한이 없습니다.
- 데이터의 양과 복잡성이 매우 큽니다.
- 비즈니스 프로세스 및 절차의 결함
- 테스트 데이터 획득 및 구축 문제
- 불안정한 테스트 환경
- 비즈니스 흐름 정보 누락
데이터는 기업이 중요한 비즈니스 결정을 내리는 데 중요합니다. ETL 테스트는 비즈니스 정보가 정확하고 일관되며 신뢰할 수 있는지 확인하고 확인하는 데 중요한 역할을합니다. 또한 생산시 데이터 손실 위험을 최소화합니다.
이 팁이 ETL 프로세스가 정확하고이를 통해 구축 된 데이터웨어 하우스가 비즈니스의 경쟁 우위임을 보장하는 데 도움이되기를 바랍니다.
ETL 테스트 자습서의 전체 목록 :
- 튜토리얼 # 1 : ETL 테스트 데이터웨어 하우스 테스트 소개 가이드
- 튜토리얼 # 2 : Informatica PowerCenter 도구를 사용한 ETL 테스트
- 튜토리얼 # 3 : ETL vs. DB 테스트
- 튜토리얼 # 4 : 비즈니스 인텔리전스 (BI) 테스트 : 비즈니스 데이터를 테스트하는 방법
- 튜토리얼 # 5 : 상위 10 가지 ETL 테스트 도구
이것은 MNC에서 테스트 관리 역할을하고있는 Vishal Chhaperia의 게스트 포스트입니다. 그는 다중 기술 QA 프로젝트, 프로세스 및 팀 관리에 대한 광범위한 경험을 가지고 있습니다.
ETL 테스트에 참여 했습니까? 아래에서 ETL / DW 테스트 팁과 과제를 공유하십시오.