etl testing data warehouse testing tutorial
ETL-testning / datalagerprocess och utmaningar:
Låt mig idag ta en stund och förklara min testbröderskap om en av de mycket efterfrågade och kommande färdigheterna för mina testvänner, dvs. ETL-testning (Extract, Transform, and Load).
Denna handledning ger dig en fullständig idé om ETL-testning och vad vi gör för att testa ETL-processen.
Kompletta lista Tutorials i denna serie:
- Handledning nr 1 : ETL Testing Data Warehouse Testing Introduktionsguide
- Handledning nr 2 : ETL-testning med hjälp av Informatica PowerCenter Tool
- Handledning nr 3 : ETL vs. DB-testning
- Handledning nr 4 : Business Intelligence (BI) Testing: Hur man testar affärsdata
- Handledning nr 5 : Topp 10 ETL-testverktyg
Det har observerats att oberoende verifiering och validering vinner enorm marknadspotential och många företag ser nu detta som en potentiell affärsvinst.
Kunderna har erbjudits ett annat produktsortiment när det gäller tjänsteerbjudanden, distribuerade i många områden baserat på teknik, process och lösningar. ETL eller datalager är ett av erbjudanden som utvecklas snabbt och framgångsrikt.
Genom ETL-processen hämtas data från källsystemen, transformeras enligt affärsregler och laddas slutligen till målsystemet (datalager). Ett datalager är en affärsomfattande butik som innehåller integrerade data som hjälper till i affärsprocessens beslutsprocess. Det är en del av affärsinformation.
Vad du kommer att lära dig:
- Varför behöver organisationer datalager?
- ETL-process
- ETL-testtekniker
- ETL / Data Warehouse Testing Process
- Skillnad mellan databas och datalagertestning
- ETL-testutmaningar
- Rekommenderad läsning
Varför behöver organisationer datalager?
Organisationer med organiserad IT-praxis ser fram emot att skapa nästa nivå av teknikomvandling. De försöker nu göra sig mycket mer operativa med lättanvända data.
Med detta sagt är data viktigast i alla organisationer, det kan vara vardagliga data eller historiska data. Data är ryggraden i alla rapporter och rapporter är baslinjen som alla viktiga beslut fattas för.
De flesta av företagen tar ett steg framåt för att bygga sitt datalager för att lagra och övervaka realtidsdata samt historisk data. Att skapa ett effektivt datalager är inte ett enkelt jobb. Många organisationer har distribuerade avdelningar med olika applikationer som körs på distribuerad teknik.
ETL-verktyget används för att göra en felfri integration mellan olika datakällor från olika avdelningar. ETL-verktyget fungerar som en integrator och extraherar data från olika källor; Omvandla det till det föredragna formatet baserat på affärstransformationsreglerna och ladda det i sammanhängande DB kända är Data Warehouse.
Välplanerad, väldefinierad och effektiv testomfattning garanterar smidig konvertering projektet till produktionen. Ett företag får den verkliga flytkraften när ETL-processerna har verifierats och validerats av en oberoende expertgrupp för att säkerställa att datalager är konkret och robust.
ETL- eller datalagertestning kategoriseras i fyra olika uppdrag oavsett vilken teknik eller ETL-verktyg som används:
- Ny datalagertestning - Nya DW är byggda och verifierade från grunden. Datainmatning hämtas från kundkrav och olika datakällor och nytt datalager byggs och verifieras med hjälp av ETL-verktyg.
- Migration Testing - I denna typ av projekt kommer kunden att ha en befintlig DW och ETL som utför jobbet, men de vill lägga till ett nytt verktyg för att förbättra effektiviteten.
- Ändringsbegäran - I denna typ av projekt läggs nya data till från olika källor till en befintlig DW. Det kan också finnas ett villkor där kunden behöver ändra sin befintliga affärsregel eller integrera den nya regeln.
- Rapportera testning - Rapport är slutresultatet för alla datalagrar och det grundläggande förslaget som DW bygger för. Rapporten måste testas genom att validera layout, data i rapporten och beräkning.
ETL-process
( Notera : Klicka på bilden för förstoring)
ETL-testtekniker
1) Testning av datatransformation : Kontrollera att data omvandlas korrekt enligt olika affärskrav och regler.
2) Testning av källa till målantal : Se till att antalet poster som laddats i målet matchar det förväntade antalet.
3) Källa till måttdatatestning : Se till att all projicerad data laddas in i datalagret utan dataförlust och trunkering.
4) Datakvalitetstestning : Se till att ETL-applikationen på rätt sätt avvisar, ersätter med standardvärden och rapporterar ogiltiga data.
5) Prestandatestning : Se till att data laddas i datalager inom föreskrivna och förväntade tidsramar för att bekräfta förbättrad prestanda och skalbarhet.
java array lägg till element till slut
6) Testning av produktionsvalidering: Validera data i produktionssystemet och jämför dem med källdata.
7) Testning av dataintegration : Se till att data från olika källor har laddats ordentligt till målsystemet och att alla tröskelvärden är kontrollerade.
8) Test av applikationsmigrering : I denna testning säkerställs att ETL-applikationen fungerar bra med att flytta till en ny låda eller plattform.
9) Kontroll av data och begränsningar : Datatyp, längd, index, begränsningar etc. testas i detta fall.
10) Dubbel datakontroll : Testa om det finns dubbletter i målsystemen. Dubbla data kan leda till fel analytiska rapporter.
Förutom ovanstående ETL-testmetoder utförs också andra testmetoder som systemintegrationstestning, användaracceptansprovning, inkrementell testning, regressionstestning, testning och navigeringstestning för att säkerställa att allt är smidigt och pålitligt.
ETL/ Datalager Testprocess
I likhet med alla andra tester som ligger under oberoende verifiering och validering, går ETL också igenom samma fas.
- Kravsförståelse
- Validerar
- Test uppskattning baserat på ett antal tabeller, komplexiteten i regler, datavolym och prestanda för ett jobb.
- Testplanering baserat på insatserna från testuppskattning och affärsbehov. Vi måste här identifiera att vad som är inom räckvidden och vad som är utanför räckvidden. Vi ser också efter beroenden, risker och planer för minskning i denna fas.
- Designa testfall och testscenarier från alla tillgängliga ingångar. Vi måste också designa mappdokument och SQL-skript.
- När alla testfall är klara och godkända fortsätter testteamet att utföra kontroll före genomförandet och testdataförberedelse för provning
- Slutligen utförs körning tills utgångskriterierna är uppfyllda. Så exekveringsfasen inkluderar körning av ETL-jobb, övervakning av jobbkörningar, körning av SQL-skript, loggning av defekter, testning av defekter och test av regression.
- Efter framgångsrik beredning utarbetas en sammanfattande rapport och avslutningsprocessen görs. I denna fas ges avloggning för att marknadsföra jobbet eller koden till nästa fas.
De första två faserna, dvs. kravförståelse och validering, kan betraktas som försteg i ETL-testprocessen.
Så huvudprocessen kan representeras enligt nedan:
Det är nödvändigt att definiera teststrategi som ömsesidigt ska accepteras av intressenter innan den faktiska testningen påbörjas. En väldefinierad teststrategi kommer att se till att rätt tillvägagångssätt har följts för att uppfylla testets ambition.
ETL / Data Warehouse-testning kan kräva att man skriver SQL-uttalanden i stor utsträckning av testteamet eller kanske skräddarsyr SQL som tillhandahålls av utvecklingsteamet. I vilket fall som helst måste ett testteam vara medveten om de resultat de försöker få med dessa SQL-uttalanden.
Skillnad mellan databas och datalagertestning
Det finns ett populärt missförstånd att databas testning och datalager är liknande medan faktum är att båda håller olika riktningar i testningen.
- Databastestning görs med hjälp av en mindre skala av data normalt med OLTP-databaser (online transaktionsbehandling) medan datalagertestning görs med stora volymer med data som involverar OLAP-databaser (online analytisk bearbetning).
- I databastestning injiceras normalt data konsekvent från enhetliga källor medan i datalagertestning kommer de flesta data från olika typer av datakällor som är sekventiellt inkonsekventa.
- Vi utför vanligtvis den enda CRUD-operationen (Skapa, läs, uppdatera och ta bort) i databastestning medan vi i datalagertestning använder skrivskyddad (Välj) -operation.
- Normaliserade databaser används i DB-testning medan demoraliserad DB används i datalagertestning.
Det finns ett antal universella verifieringar som måste utföras för alla typer av datalagertester.
Nedan är listan över objekt som behandlas som nödvändiga för validering i denna testning:
- Kontrollera att datatransformation från källa till destination fungerar som förväntat
- Kontrollera att förväntad data har lagts till i målsystemet
- Kontrollera att alla DB-fält och fältdata laddas utan avkortning
- Verifiera datakontrollsumman för matchning av antal poster
- Kontrollera att för avvisade data skapas korrekta felloggar med alla detaljer
- Verifiera NULL-värdefält
- Kontrollera att dubblettdata inte har laddats
- Verifiera dataintegriteten
=> Känn till skillnad mellan ETL / Data warehouse testing & Database Testing .
ETL-testutmaningar
Denna testning skiljer sig ganska från konventionell testning. Det finns många utmaningar som vi stod inför när vi utför datalagertestning.
Här är några utmaningar som jag upplevt i mitt projekt:
- Inkompatibla och dubbla data
- Förlust av data under ETL-processen
- Otillgänglighet för den inkluderande testbädden
- Testare har inga privilegier att utföra ETL-jobb på egen hand
- Volym och komplexitet i data är väldigt enorm
- Fel i affärsprocesser och rutiner
- Problem med att skaffa och bygga testdata
- Instabil testmiljö
- Saknar affärsflödesinformation
Data är viktigt för företag att fatta kritiska affärsbeslut. ETL-testning spelar en viktig roll för att validera och säkerställa att affärsinformationen är exakt, konsekvent och pålitlig. Det minimerar också risken för dataförlust i produktionen.
Hoppas att dessa tips hjälper dig att säkerställa att din ETL-process är korrekt och att datalagerbyggnaden är en konkurrensfördel för ditt företag.
Komplett lista över ETL-testhandledning:
- Handledning nr 1 : ETL Testing Data Warehouse Testing Introduktionsguide
- Handledning nr 2 : ETL-testning med hjälp av Informatica PowerCenter Tool
- Handledning nr 3 : ETL vs. DB-testning
- Handledning nr 4 : Business Intelligence (BI) Testing: Hur man testar affärsdata
- Handledning nr 5 : Topp 10 ETL-testverktyg
Detta är ett gästinlägg av Vishal Chhaperia som arbetar i ett MNC i en testledningsroll. Han har lång erfarenhet av att hantera multitekniska QA-projekt, processer och team.
Har du arbetat med ETL-testning? Dela dina ETL / DW testtips och utmaningar nedan.
Rekommenderad läsning
- Alfatestning och betatestning (En komplett guide)
- ETL Testing Intervju Frågor och svar
- Bästa verktyg för testning av programvara 2021 (QA Test Automation Tools)
- Topp 10 ETL-testverktyg 2021
- Byggverifieringstestning (BVT-testning) Komplett guide
- Funktionell testning mot icke-funktionell testning
- De fyra stegen till BI-testning: Hur man testar affärsdata
- Testing Primer eBook Download