how perform etl testing using informatica powercenter tool
Det är ett känt faktum att ETL-testning är en av de avgörande aspekterna av någon Business Intelligence (BI) -baserad applikation. För att få kvalitetssäkring och acceptans för att gå i affärer bör BI-applikationen testas i god tid.
Det primära målet med ETL-testning är att säkerställa att ÄR xtrakt, T ransform & L oad-funktionalitet fungerar enligt företagets krav och synkroniseras med prestandastandarder.
Innan vi gräver i ETL-testning med Datoranvändning , är det viktigt att veta vad ETL och Informatica är.
Vad du kommer att lära dig:
- Vad du lär dig i denna ETL-handledning:
- Informatica PowerCenter ETL-testverktyg:
- Förstå ETL-testning specifikt för Informatica:
- Klassificering av ETL-testning i Informatica:
- Fördelar med att använda Informatica som ETL-verktyg:
- Några användbara tips som hjälper dig i informatica ETL-testning:
- Slutsats:
- Rekommenderad läsning
Vad du lär dig i denna ETL-handledning:
- Grunderna i ETL, Informatica & ETL testning.
- Förstå ETL-testning specifikt för Informatica.
- Klassificering av ETL-testning i Informatica.
- Exempel på testfall för Informatica ETL-testning.
- Fördelar med att använda Informatica som en ETL-verktyg .
- Tips & tricks som hjälper dig att testa.
I databehandling hänvisar Extract, Transform, Load (ETL) till en process i databasanvändning och särskilt i datalagring som utför:
- Datautvinning - Extraherar data från homogena eller heterogena datakällor.
- Datatransformation - Formaterar data till önskad typ.
- Dataladdning - Flytta och lagra data till en permanent plats för långvarig användning.
Informatica PowerCenter ETL-testverktyg:
Informatica PowerCenter är ett kraftfullt ETL-verktyg från Informatica Corporation. Det är en enda enhetlig dataintegrationsplattform för företag för åtkomst, upptäckt och integrering av data från praktiskt taget alla affärssystem, i alla
Det är en enda enhetlig dataintegrationsplattform för företag för åtkomst, upptäckt och integrering av data från praktiskt taget vilket affärssystem som helst, i vilket format som helst och för att leverera data i hela företaget med vilken hastighet som helst. Genom Informatica PowerCenter , vi skapar arbetsflöden som utför ETL-operationer från början till slut.
Ladda ner och installera Informatica PowerCenter:
För att installera och konfigurera Informatica PowerCenter 9.x använder du länken nedan som har steg för steg instruktioner:
=> Informatica PowerCenter 9 Installations- och konfigurationsguide
Förstå ETL-testning specifikt för Informatica:
ETL-testare har ofta relevanta frågor om vad man ska testa i Informatica och hur mycket testtäckning som behövs?
Låt mig ta dig igenom en turné om hur man utför ETL-testning specifikt för Informatica.
De viktigaste aspekterna som huvudsakligen bör behandlas i Informatica ETL-testning är:
- Testa funktionaliteten hos Informatica-arbetsflödet och dess komponenter; alla transformationer som används i de underliggande mappningarna.
- För att kontrollera datans fullständighet (dvs. se till att de projicerade data laddas till målet utan trunkering och dataförlust),
- Verifiera om data laddas till målet inom uppskattade tidsgränser (dvs. utvärdera arbetsflödets prestanda),
- Säkerställa att arbetsflödet inte tillåter att ogiltiga eller oönskade data laddas i målet.
Klassificering av ETL-testning i Informatica:
För bättre förståelse och lätthet av testaren kan ETL-testning i Informatica delas in i två huvuddelar -
hur man vänder en array i java
# 1) Test på hög nivå
# 2) Detaljerad testning
För det första i högnivåprovningen:
- Du kan kontrollera om Informatica-arbetsflödet och relaterade objekt är giltiga eller inte.
- Kontrollera om arbetsflödet har slutförts framgångsrikt när det körs.
- Bekräfta om alla nödvändiga sessioner / uppgifter utförs i arbetsflödet.
- Validera om data laddas till önskad målkatalog och med det förväntade filnamnet (om arbetsflödet skapar en fil), etc.
I ett nötskal kan du säga att testet på hög nivå inkluderar alla grundläggande sanityskontroller.
Kommer till nästa del, dvs. detaljerad testning i Informatica kommer du att gå på djupet för att validera om den logik som implementeras i Informatica fungerar som förväntat när det gäller dess resultat och prestanda.
- Du måste göra validering av utdata på fältnivå som bekräftar att varje transformation fungerar bra
- Kontrollera om postantalet på varje bearbetningsnivå och slutligen om målet är som förväntat.
- Övervaka noggrant element som källkvalificering och mål i käll- / målstatistik för sessionen
- Se till att löptiden för Informatica-arbetsflödet är i nivå med den beräknade körtiden.
Sammanfattningsvis kan vi säga att den detaljerade testningen inkluderar en noggrann validering av informatica-arbetsflöde från slut till slut och relaterat dataflöde.
Låt oss ta ett exempel här:
Vi har en platt fil som innehåller data om olika produkter. Den lagrar information som produktens namn, dess beskrivning, kategori, utgångsdatum, pris etc.
Mitt krav är att hämta varje produktpost från filen, skapa ett unikt produkt-ID som motsvarar varje post och ladda det i måldatabastabellen. Jag måste också undertrycka de produkter som antingen tillhör kategorin C eller vars utgångsdatum är mindre än nuvarande datum.
Säg, min platta fil (källa) ser ut så här:
(Notera:Klicka på valfri bild för förstorad vy)
Baserat på mina krav som anges ovan ska min databastabell (Target) se ut så här:
Tabellnamn: Tbl_Product
Prod_ID (primär nyckel) | Produktnamn | Prod_description | Prod_category | Prod_expiry_date | Prod_pris |
---|---|---|---|---|---|
1001 | ABC | Detta är produkt ABC. | M | 14.8.2017 | 150 |
1002 | DEF | Detta är produkt DEF. | S | 10/6/2018 | 700 |
1003 | PQRS | Detta är produkt PQRS. | M | 2015-05-23 | 1500 |
Nu, säg, vi har utvecklat ett Informatica-arbetsflöde för att få lösningen för mina ETL-krav.
Den underliggande kartläggningen av Informatica kommer att läsa data från den platta filen, skicka data genom en routertransformation som kommer att kasta rader som antingen har produktkategori som 'C' eller utgångsdatum, då använder jag en sekvensgenerering för att skapa den unika primära nyckeln värden för kolumnen Prod_ID i produkttabellen.
Slutligen kommer posterna att laddas till produkttabellen som är målet för min Informatica-kartläggning.
Exempel:
Nedan följer exemplet testfall för scenariot som förklaras ovan.
Du kan använda dessa testfall som en mall i ditt Informatica-testprojekt och lägga till / ta bort liknande testfall beroende på funktionaliteten i ditt arbetsflöde.
# 1) Testfall-ID: T001
Testfall Syfte: Validera arbetsflöde - (workflow_name)
Test procedur:
- Gå till arbetsflödeshanteraren
- Öppna arbetsflödet
- Arbetsflödesmeny-> klicka på validera
Ingångsvärde / testdata: Källor och mål är tillgängliga och anslutna
Källor: (namn på alla källinstanser)
Kartläggningar: (alla mappningar namn)
Mål: (namn på alla målinstanser)
Session: (alla sessionernas namn)
Förväntade resultat: Meddelande i statusfältet för arbetsflödeshanteraren: ”Arbetsflöde (arbetsflödsnamn) är giltigt“
Faktiska resultat: Meddelande i statusfältet för arbetsflödeshanteraren: ”Arbetsflöde (arbetsflödsnamn) är giltigt“
Anmärkningar:Passera
Testarens kommentarer:
# 2) Testfall-ID: T002
Testfall Syfte: För att säkerställa om arbetsflödet körs framgångsrikt
Test procedur:
- Gå till arbetsflödeshanteraren
- Öppna arbetsflödet
- Högerklicka i arbetsflödesdesigner och välj Starta arbetsflöde
- Kontrollera status i Workflow Monitor
Ingångsvärde / testdata: Samma som testdata för T001
Förväntade resultat: Meddelande i utdatafönstret i Workflow Manager: Uppgiftsuppdatering: (workflow_name) (Succeeded)
Faktiska resultat: Meddelande i utdatafönstret i Workflow Manager: Uppgiftsuppdatering: (workflow_name) (Succeeded)
Anmärkningar:Passera
Testarens kommentarer: Arbetsflödet lyckades
Notera: Du kan enkelt se arbetsflödets körstatus (misslyckades / lyckades) i arbetsflödesövervakaren som visas i exemplet nedan. När arbetsflödet har slutförts återspeglas status automatiskt i arbetsflödesövervakaren.
I ovanstående skärmdump kan du se starttid och sluttid för arbetsflödet samt status som lyckats.
# 3) Testfall ID: T003
Testfall Syfte: För att validera om det önskade antalet poster laddas in till målet
Test procedur: När arbetsflödet har körts framgångsrikt går du till måltabellen i databasen
Kontrollera antalet rader i måldatabastabellen
Ingångsvärde / testdata: 5 rader i källfilen
Mål: databastabell - (Tbl_Product)
Fråga som ska köras i SQL-server: Välj antal (1) från (Tbl_Product)
Förväntade resultat: 3 rader valda
Faktiska resultat: 3 rader valda
Anmärkningar:Passera
hur man startar en .jar-fil
Testarens kommentarer:
# 4) Testfall ID: T004
Testfall Syfte: För att kontrollera om sekvensgeneratorn i Informatica-mappningen fungerar bra för att fylla i (primär_kolumn_namn t.ex. Prod_ID) kolumn
Test procedur: När arbetsflödet har körts framgångsrikt går du till måltabellen i databasen
Kontrollera den unika sekvensen som genereras i kolumn Prod_ID
Ingångsvärde / testdata: värde för Prod_ID lämnas tomt för varje rad i källfilen
Sekvensgenerator mappad till Prod_ID-kolumnen i kartläggningen
Sekvensgeneratorns startvärde inställt på 1001
Mål: databastabell- (Tbl_Product) öppnas i SQL Server
Förväntade resultat: Värde från 1001 till 1003 fyllt i varje rad för Prod_ID-kolumnen
Faktiska resultat: Värde från 1001 till 1003 fyllt i varje rad för Prod_ID-kolumnen
Anmärkningar:Passera
Testarens kommentarer:
# 5) Testfall ID: T005
c # tekniska intervjufrågor och svar
Testfall Syfte: För att validera om routertransformation fungerar bra för att undertrycka poster om produktkategorin är ”C” eller om produkten har upphört att gälla.
Test procedur: När arbetsflödet har körts framgångsrikt går du till måltabellen i databasen
Kör frågan på måltabellen för att kontrollera om de önskade posterna har undertryckts.
Ingångsvärde / testdata: 5 rader i källfilen
Mål: databastabell - (Tbl_Product)
Fråga som ska köras i SQL-server: Välj * från produkt där Prod_category = ’C’ eller Prod_expiry_date< sysdate ;
Förväntade resultat: inga rader valda
Faktiska resultat: inga rader valda
Anmärkningar:Passera
Testarens kommentarer: (om någon)
# 6) Testfall-ID: T006
Testfall Syfte: För att kontrollera arbetsflödets prestanda genom att registrera arbetsflödets körtid.
Test procedur:
- Öppna arbetsflödesövervakaren och kör den körning som gjordes som en del av T001.
- Spela in starttid och sluttid för arbetsflödet.
- Beräkna total körtid genom att subtrahera starttiden från sluttiden.
Ingångsvärde / testdata: Arbetsflödet har körts framgångsrikt
Starttid för arbetsflöde i bildskärm
Sluttid för arbetsflödet i bildskärmen.
Förväntade resultat: 2 min 30 sek
Faktiska resultat: 2 min 15 sekunder
Anmärkningar:Passera
Testarens kommentarer: Betraktar testet som ”Pass” om den faktiska körtiden är +/- 10% av den förväntade körtiden.
# 7) Testfall-ID: T007
Testfall Syfte: Att validera data på kolumnivå på måltabellen för att säkerställa att det inte förekommer dataförlust.
Test procedur: När arbetsflödet har körts framgångsrikt går du till SQL Server.
Kör frågan på måltabellen för att kontrollera att det inte finns någon dataförlust.
Ingångsvärde / testdata: Arbetsflödet har körts framgångsrikt
Ett exempel på post från källplattfil.
SQL-fråga: Välj Topp 1 * från Tbl_Patient;
Förväntade resultat:
1 rad tillbaka
Prod_ID (primär nyckel) | Produktnamn | Prod_description | Prod_category | Prod_expiry_date | Prod_pris |
---|---|---|---|---|---|
1001 | ABC | Detta är produkt ABC. | M | 14.8.2017 | 150 |
Faktiska resultat:
1 rad tillbaka.
Prod_ID (primär nyckel) | Produktnamn | Prod_description | Prod_category | Prod_expiry_date | Prod_pris |
---|---|---|---|---|---|
1001 | ABC | Detta är produkt ABC. | M | 14.8.2017 | 150 |
Anmärkningar:Passera
Testarens kommentarer: Betraktar testet som ”Pass” om den faktiska körtiden är +/- 10% av den förväntade körtiden.
Fördelar med att använda Informatica som ETL-verktyg:
Informatica är ett populärt och framgångsrikt ETL-verktyg eftersom:
- Den har en hög 'go live' framgångsgrad (nästan 100%)
- Informatica har möjlighet att möjliggöra Lean Integration.
- Det är ett prisvärt verktyg jämfört med andra ETL-verktyg.
- Den levereras med internt jobbschemaläggare. Så det finns ingen anledning att använda schemaläggare från tredje part separat som vissa andra ETL-verktyg gör.
- Enkel träning och tillgänglighet av verktyg har gjort Informatica mer populärt.
Några användbara tips som hjälper dig i informatica ETL-testning:
- Generera testdata innan testscenarierna körs.
- Testdata ska vara synkroniserade med det testfall som det används för.
- Se till att du har täckt alla de tre scenarierna - ingen data skickas in, ogiltiga data skickas in och giltiga data skickas som en input till Informatica-arbetsflödet.
- Se till att testa att alla nödvändiga data laddas för att rikta helt. För detta kan du använda testfallet - T003 som beskrivs ovan som ett exempel.
- Det är mycket viktigt att testa att arbetsflödet utför alla datatransformationer korrekt enligt affärsregler.
- Jag föreslår att för varje transformation som tillämpas i din Informatica-kartläggning ska du ha en checklista för att verifiera utdata mot den. På det sättet kan du enkelt rapportera fel om någon transformation inte fungerar bra.
Slutsats:
Så vi har sett i detalj några av provtestfall som kan användas som mall för att täcka ETL-testning i Informatica. Som jag nämnde tidigare kan du lägga till / ta bort / ändra dessa testfall beroende på vilket scenario du har i ditt projekt.
Som jag nämnde tidigare kan du lägga till / ta bort / ändra dessa testfall beroende på vilket scenario du har i ditt projekt.
Informatica PowerCenter är en grund för alla dataintegrationsaktiviteter.
Du kan enkelt utföra skriptfri automatiserad testning av data som kopierats till test-, utvecklings- eller produktionsmiljö, och det är anledningen till att PowerCenter är det mest populära ETL-verktyget idag.
Rekommenderad läsning => ETL vs. DB-testning - En närmare titt på ETL-testbehov
Om författaren: Detta är en gästartikel av Priya K. Hon har 4+ års erfarenhet av att utveckla och stödja Informatica ETL-applikationer.
Skicka gärna dina frågor / kommentarer om detta ETL-verktyg.
Rekommenderad läsning
- Bästa verktyg för testning av programvara 2021 (QA Test Automation Tools)
- Hur man utför Backend Testing
- ETL Testing Intervju Frågor och svar
- ETL Testing Data Warehouse Testing Tutorial (En komplett guide)
- Testing Primer eBook Download
- ETL vs. DB-testning - En närmare titt på ETL-testbehov, planering och ETL-verktyg
- Lasttestning med LoadUI - Ett kostnadsfritt lasttestverktyg med öppen källkod
- Topp 10 ETL-testverktyg 2021