ETL tesztelési oktatóanyag
⚡ Okos összefoglaló
Az ETL tesztelés validálja, hogyan áramlanak az adatok a forrásrendszerekből az átalakítási logikán keresztül a cél adattárházba, megerősítve a pontosságot, a teljességet és a megbízhatóságot. Ez az anyag ismerteti a folyamat szakaszait, a tesztelési típusokat, a gyakori hibakategóriákat, az automatizálási megközelítéseket és a gyakorlati bevált gyakorlatokat, amelyekre a kezdő és középhaladó tesztelőknek szükségük van.

Mi az ETL?
ETL jelentése Extract-Transform-Load, és leírja, hogyan mozognak az adatok egy forrásrendszerből egy adattárházba. Az adatok pl.tracegy OLTP adatbázisból származnak, átalakítják az adattárház sémájának megfelelően, és betöltik az adattárház adatbázisába. Sok adattárház nem OLTP rendszerekből származó adatokat is tartalmaz, például szövegfájlokat, régi alkalmazásokat és táblázatokat.
Például egy kiskereskedelmi üzletnek lehetnek különálló részlegei, például értékesítés, marketing és logisztika. Minden részleg külön kezeli az ügyféladatokat, és az adatok tárolásának módja is eltérő. Az értékesítési részleg az ügyfél neve szerint tárolhatja a rekordokat, míg a marketing részleg az ügyfél-azonosítót használja.
Ha az üzleti csapatok egy ügyfél teljes vásárlási előzményeit szeretnék áttekinteni különböző marketingkampányokban, az össze nem függő adatok miatt ez nagyon nehézkes. A megoldás egy adattárház különböző forrásokból származó információk egységes struktúrában történő tárolása az ETL használatával. Az ETL képes a különböző adathalmazokat egységes struktúrává alakítani, így a BI-eszközök később értelmes elemzéseket és jelentéseket tudnak kinyerni.
A következő ábra az ETL tesztelési folyamatot és az útmutatóban használt alapvető fogalmakat mutatja be:
1) Példatract
- Extracreleváns adatok egy vagy több forrásrendszerből.
2) Átalakítás
- Adatok átalakítása DW (adattárház) formátumba.
- Összeállítási kulcsok: a kulcs egy vagy több adatattribútum, amely egyedileg azonosít egy entitást. típusú kulcsok elsődleges kulcs, alternatív kulcs, idegen kulcs, összetett kulcs és helyettes kulcs. Az adattárház birtokolja ezeket a kulcsokat, és soha nem engedélyezi más entitásnak, hogy hozzárendelje azokat.
- Adattisztítás: az adatok eltávolítása utántracMiután elvégezte a tisztítást és a megfelelőség biztosítását, a rendszer a következő fázisba lép, amely a tisztítást és a megfelelőség biztosítását jelenti. A tisztítás kijavítja a hiányosságokat és azonosítja a hibákat. A megfelelőség biztosításával feloldja az inkompatibilis adathalmazok közötti ütközéseket, így azok felhasználhatók egy vállalati adattárházban. A rendszer metaadatokat is létrehoz, amelyek segítenek a forrásrendszer problémáinak diagnosztizálásában és az adatminőség javításában.
3) Terhelés
- Töltsön be adatokat a DW-be (adattárház).
- Összesítések létrehozása: egy összesítés összegzi és tárolja az adatokat egy ténytáblázat a végfelhasználói lekérdezések teljesítményének javítása érdekében.
Mi az ETL tesztelés?
Az ETL tesztelést azért végzik, hogy biztosítsák a forrásból a célállomásra betöltött adatok pontosságát az üzleti átalakítás után. Ez magában foglalja az adatok ellenőrzését a forrás és a célállomás közötti különböző közbenső szakaszokban is. Mivel az ETL az ExtracA t-Transform-Load ETL tesztelés mindhárom szakaszt lefedi, valamint azokat a pontokat, ahol az adatok áthaladnak közöttük.
Miért fontos az ETL tesztelés?
Miután megértettük, mi az ETL tesztelés, a következő kérdés az, hogy miért fektetnek bele a szervezetek ennyi energiát. Az üzleti döntések a helyes, teljes és megbízható adatokon alapulnak, így egyetlen átalakítási hiba is átgyűrűzhet a pénzügyi jelentésekbe, az ügyfélelemzésekbe és a szabályozási közzétételekbe.
A következő pontok magyarázzák az erős ETL tesztelés gyakorlati értékét:
- Adatok pontossága: Megerősíti, hogy az üzleti szabályok által átalakított értékek megegyeznek a dokumentált térképpelping specifikációk, megakadályozva a csendes korrupciót.
- Megbízható jelentéskészítés: Az irányítópultok és az üzletiintelligencia-eszközök az adattárháztól függenek, így az ellenőrzött ETL-folyamatok minden downstream jelentést és KPI-t védenek.
- Előírásoknak való megfelelés: Az olyan iparágaknak, mint a banki szolgáltatások, az egészségügy és a biztosítás, bizonyítaniuk kell, hogy az adatok származási vonalát és integritását a teljes folyamat végpontjain megőrzik.
- Csökkentett utómunka: Az alacsonyabb szintű környezetekben észlelt hibák elkerülhetők a költséges termelési újraindítások, a manuális egyeztetések és az ügyfelekkel kapcsolatos hibák.
- Teljesítménybiztosítás: Az ETL tesztelés méri a betöltési ablakokat, az átviteli sebességet és a szűk keresztmetszeteket, így a raktár az adatmennyiség növekedésével is tovább skálázható.
Miután ezeket a motivációkat tisztáztuk, a következő rész bemutatja azt a strukturált folyamatot, amelyet az ETL tesztelők valós projekteken követnek.
A Dataddo egy teljes mértékben felügyelt, kódmentes adatintegrációs platform, amely leegyszerűsíti a felhőalkalmazások, műszerfalak és adattárházak összekapcsolását. Ez az ETL platform olyan egyedi csatlakozókkal rendelkezik, amelyek 10 munkanapon belül elkészíthetők. Az eszköz támogatja a fordított ETL-t, az adatbázis-replikációt és a hagyományos ETL-funkciókat.
ETL tesztelési folyamat
Más tesztelési folyamatokhoz hasonlóan az ETL is különböző fázisokon megy keresztül. Az ETL tesztelési folyamat különböző fázisai a következők:
Az ETL tesztelés öt szakaszban történik:
- Az adatforrások és követelmények azonosítása
- Adatgyűjtés
- Üzleti logika és dimenzionális modellezés megvalósítása
- Adatok összeállítása és feltöltése
- Jelentések készítése
A magas szintű folyamatot szem előtt tartva, nézzük meg azokat a konkrét tesztelési típusokat, amelyek beleillenek ebbe az életciklusba.
Az ETL tesztelés típusai
- Gyártás érvényesítési tesztelése
Vizsgálati folyamat: Az ilyen típusú ETL-tesztelést, amelyet „táblakiegyensúlyozásnak” vagy „termelési egyeztetésnek” is neveznek, az adatokon végzik, amint azok a termelési rendszerekbe kerülnek. Az üzleti döntések támogatásához a termelési adatoknak a megfelelő sorrendben kell lenniük. Informatikai Az adatérvényesítési opció ETL tesztelési automatizálási és -kezelési képességeket biztosít, így a termelési rendszereket nem veszélyeztetik a hibás adatok. - Forrás ide Target Tesztelés (érvényesítési tesztelés)
Vizsgálati folyamat: Ez a fajta tesztelés azt ellenőrzi, hogy az átalakított adatértékek megegyeznek-e a várt célértékekkel. - Alkalmazás
Upgrades
Vizsgálati folyamat: Ez a fajta ETL tesztelés automatikusan generálható, ami jelentős tesztfejlesztési időt takarít meg. Ellenőrzi, hogy az adatok...tracEgy régebbi alkalmazásból vagy adattárból származó adatok megegyeznek egy új alkalmazásban vagy adattárban található adatokkal. - Metaadat tesztelés
Vizsgálati folyamat: A metaadat-tesztelés magában foglalja az adattípus-ellenőrzéseket, az adathossz-ellenőrzéseket, valamint az index- vagy korlátozás-ellenőrzéseket. - Az adatok teljességének tesztelése
Vizsgálati folyamat: Az adatteljességi tesztelés ellenőrzi, hogy minden várt adat betöltődik-e a forrásból a célba. A gyakori tesztek magukban foglalják a rekordok számának, az aggregátumoknak és a tényleges adatoknak a forrás- és céloszlopok közötti összehasonlítását és validálását, amikor az átalakítás egyszerű vagy hiányzik. - Adatpontossági tesztelés
Vizsgálati folyamat: Ez a tesztelés biztosítja, hogy az adatok pontosan, a várt módon töltődnek be és alakulnak át. - Adattranszformációs tesztelés
Vizsgálati folyamat: A tesztelési adattranszformáció gyakran nem valósítható meg egyetlen forrásból SQL lekérdezés és egy kimeneti összehasonlítás. Több SQL lekérdezésre lehet szükség minden sorhoz a transzformációs szabályok ellenőrzéséhez. - Adatminőség tesztelése
Vizsgálati folyamat:Az adatminőség-tesztek szintaktikai teszteket és referenciateszteket is tartalmaznak. Ezek megakadályozzák a helytelen dátumok vagy rendelési számok által okozott üzleti folyamathibákat.
A szintaxis tesztek érvénytelen karakterek, karakterminták és helytelen nagy- vagy kisbetűsorrend alapján jelentenek piszkos adatokat.
A referenciatesztek az adatokat az adatmodell alapján ellenőrzik. Például: Ügyfél-azonosító.
Az adatminőség-tesztelés magában foglalja a számellenőrzéseket, a dátumellenőrzéseket, a pontosságellenőrzéseket, az adatellenőrzéseket és a nullpont-ellenőrzéseket is.
- Inkrementális ETL tesztelés
Vizsgálati folyamat: Ez a tesztelés a régi és az új adatok integritását ellenőrzi új adatok hozzáadásával. Az inkrementális tesztelés azt ellenőrzi, hogy a beszúrások és frissítések a várt módon kerülnek-e feldolgozásra az inkrementális ETL folyamat során. - GUI/navigációs tesztelés
Vizsgálati folyamat: Ez a tesztelés a felhasználói felület (front-end) jelentéseinek navigációs és grafikus felhasználói felületét ellenőrzi.
Hogyan készítsünk ETL tesztesetet
Az ETL tesztelés egy olyan koncepció, amely az információkezelési iparág különböző eszközeire és adatbázisaira alkalmazható. Az ETL tesztelés célja annak biztosítása, hogy az üzleti átalakítás után a forrásból a célállomásra betöltött adatok pontosak legyenek. Ez magában foglalja az adatok ellenőrzését a forrás és a cél közötti különböző közbenső szakaszokban is.
ETL tesztelés során az ETL tesztelők mindig két dokumentumot használnak:
- ETL-térképping ágynemű: Egy ETL térképping A lap tartalmazza a forrás- és céltáblák összes információját, beleértve az egyes oszlopokat és azok kikeresését a referenciatáblákban. Az ETL tesztelőknek jártasnak kell lenniük az SQL lekérdezésekben, mivel az ETL tesztelés magában foglalhatja több illesztéssel rendelkező nagy lekérdezések írását az adatok bármely szakaszban történő validálásához. ETL térképping A táblák jelentős segítséget nyújtanak az adatellenőrzéshez szükséges lekérdezések írásakor.
- A forrás és a cél adatbázis sémája: Kéznél kell tartani, hogy ellenőrizni lehessen a térképen található részleteket.ping ágynemű.
ETL teszt forgatókönyvek és tesztesetek
- Térképping dokumentumérvényesítés
Teszt esetek: Ellenőrizze, hogy a megfelelő ETL-információk szerepelnek-e a térképen.ping dokumentum. Minden térképen változtatási naplót kell vezetni.ping dok. - Érvényesítés
Teszt esetek:1) A forrás- és céltábla szerkezetének validálása a megfelelő leképezés alapjánping dok.
2) A forrásadat-típusnak és a céladat-típusnak meg kell egyeznie.
3) Az adattípusok hosszának mind a forrás-, mind a céloldalon meg kell egyeznie.
4) Ellenőrizze, hogy meg vannak-e adva az adatmezőtípusok és -formátumok.
5) A forrás adattípus hossza nem lehet kisebb, mint a cél adattípus hossza.
6) Ellenőrizze a táblázat oszlopneveit a térkép alapjánping dok. - Korlátozás érvényesítése
Teszt esetek: Győződjön meg arról, hogy a korlátozások a várt módon vannak definiálva az adott táblához. - Adatkonzisztencia problémák
Teszt esetek:1) Egy adott attribútum adattípusa és hossza fájlokon vagy táblázatokonként változhat, még akkor is, ha a szemantikai definíció azonos.
2) Az integritási korlátozások helytelen használata. - Teljességgel kapcsolatos kérdések
Teszt esetek:1) Győződjön meg arról, hogy az összes várt adat betöltődik a céltáblába.
2) Hasonlítsa össze a rekordok számát a forrás és a cél között.
3) Ellenőrizze az elutasított rekordokat.
4) Ellenőrizze, hogy a céltáblák oszlopaiban nincsenek-e csonkolva az adatok.
5) Ellenőrizze a határérték-elemzést.
6) Hasonlítsa össze a kulcsmezők egyedi értékeit a raktárba betöltött adatok és a forrásadatok között. - Helyességi problémák
Teszt esetek:1) Helytelenül vagy pontatlanul rögzített adatok.
2) Null, nem egyedi vagy tartományon kívüli adat. - Átalakítás
Teszt esetek: Ellenőrizd, hogy a térképen szereplő összes üzleti szabály és átalakítási logikaping a dokumentum helyesen alkalmazva legyen a forrásadatokra, mielőtt az a célba kerülne. - Adatminőség
Teszt esetek:1) Számellenőrzés: numerikus formátumok és értékek validálása.
2) Dátumellenőrzés: a dátumoknak egységes formátumot kell követniük, és a rekordokban konzisztenseknek kell lenniük.
3) Pontosság-ellenőrzés.
4) Adatellenőrzés.
5) Nullellenőrzés. - Null Validate
Teszt esetek: Ellenőrizze a null értékeket, ahol egy adott oszlophoz „Not Null” van megadva. - Duplikált ellenőrzés
Teszt esetek:1) Ellenőrizze az egyedi kulcsot, az elsődleges kulcsot és minden más, az üzleti követelményeknek megfelelően egyedinek kell lennie oszlopot, hogy megbizonyosodjon arról, hogy nincsenek ismétlődő sorok.
2) Ellenőrizze, hogy vannak-e ismétlődő értékek bármelyik oszlopban, pl.tractöbb forrásoszlopból gyűjtötték össze és egyetlen oszlopba egyesítették.
3) Az ügyfél igényei szerint ügyeljen arra, hogy ne legyenek ismétlődő elemek több oszlop kombinációjában a célon belül. - Érvényesítés dátuma
Teszt esetek: A dátumértékeket az ETL fejlesztésének számos területén használják:1) A sor létrehozási dátumának ismerete.
2) Az aktív rekordok azonosítása az ETL fejlesztési szempontból.
3) Azonosítsa az aktív rekordokat az üzleti követelmények szempontjából.
4) Előfordul, hogy a dátumértékek alapján frissítések és beszúrások generálódnak. - Teljes adatérvényesítés
Teszt esetek:1) Ellenőrizze a forrás- és céltáblákban található teljes adathalmazt egy mínusz lekérdezéssel, mint legjobb megoldással.
2) Forrás mínusz cél és cél mínusz forrás műveleteket kell végrehajtani.
3) Ha a mínusz lekérdezés bármilyen értéket ad vissza, akkor ezeket a sorokat nem egyezőnek kell tekinteni.
4) Párosítsa a forrás és a cél sorait egy intersect utasítással.
5) Az intersect által visszaadott darabszámnak meg kell egyeznie a forrás- és céltáblák egyedi darabszámával.
6) Ha egy mínuszjelű lekérdezés sorokat ad vissza, és a metszésszám kisebb, mint a forrás- vagy célszám, akkor duplikált sorok léteznek. - Adattisztaság
Teszt esetek: A szükségtelen oszlopokat törölni kell, mielőtt betöltené az átmeneti területre.
Az ETL hibák típusai
Még erős tesztesetek esetén is az ETL folyamatok különböző módokon hibázhatnak. Az alábbi kép összefoglalja a figyelendő hibakategóriákat, a következő táblázat pedig mindegyiket leírja.
| A hibák típusa | Leírás |
|---|---|
| Felhasználói felület hibák/kozmetikai hibák |
• Az alkalmazás grafikus felhasználói felületéhez kapcsolódik • Betűstílus, betűméret, színek, igazítás, helyesírási hibák, navigáció és így tovább |
| A határérték-elemzéssel (BVA) kapcsolatos hiba | • Minimum és maximum értékek |
| Egyenértékűségi osztályú particionálással (ECP) kapcsolatos hiba | • Érvényes és érvénytelen típus |
| Bemeneti/kimeneti hibák |
• Érvényes értékek nem elfogadottak • Érvénytelen értékek elfogadva |
| Számítási hibák |
• Matematikai hibák • A végső kimenet hibás |
| Állapothibák betöltése |
• Nem engedélyez több felhasználót • Nem teszi lehetővé az ügyfél által elvárt terhelést |
| Race Condition hibák |
• Rendszerösszeomlás és lefagyás • A rendszer nem tud kliens platformokat futtatni |
| Verzióvezérlő hibák |
• Nincs egyező logó • Nincs elérhető verzióinformáció • Általában akkor fordul elő, amikor Regressziós teszt |
| H/W hibák | • Az eszköz nem reagál az alkalmazásra |
| Súgóforrás hibái | • Hibák a súgódokumentumokban |
Adattárház tesztelés
Adattárház tesztelés egy olyan tesztelési módszer, amelynek során az adattárházban lévő adatokat integritás, megbízhatóság, pontosság és konzisztencia szempontjából tesztelik, hogy megfeleljenek a vállalat adatkeretrendszerének. Az adattárház tesztelésének fő célja annak biztosítása, hogy a raktárban lévő integrált adatok elég megbízhatóak legyenek ahhoz, hogy a vállalat döntéseket hozhasson. Míg az ETL tesztelés az adatmozgatásra összpontosít, az adattárház tesztelés a szélesebb tárolási és jelentéskészítési réteget fedi le, amelyet az ETL végső soron táplál.
Különbség az adatbázis-tesztelés és az ETL-teszt között
Bár mindkét tudományág strukturált adatokkal dolgozik, eltérő kérdésekre adnak választ. Az alábbi táblázat rávilágít a gyakorlati különbségre:
| ETL tesztelés | Adatbázis tesztelése |
|---|---|
| Ellenőrzi, hogy az adatok a várt módon kerülnek-e áthelyezésre. | A fő cél annak ellenőrzése, hogy az adatok megfelelnek-e az adatmodellben meghatározott szabályoknak és szabványoknak. |
| Ellenőrzi, hogy a forrásban és a célban lévő darabszámok megegyeznek-e, és hogy az átalakított adatok a vártnak megfelelően alakulnak-e. | Ellenőrzi, hogy nincsenek-e árva rekordok, és hogy a külső kulcs és az elsődleges kulcs közötti kapcsolatok megmaradnak. |
| Ellenőrzi, hogy a külső elsődleges kulcsrelációk megmaradnak-e az ETL során. | Ellenőrzi, hogy nincsenek-e redundáns táblák, és hogy az adatbázis optimálisan normalizált-e. |
| Ellenőrzi a betöltött adatok ismétlődését. | Ellenőrzi, hogy hiányoznak-e adatok az oszlopokban, ahol szükséges. |
Teljesítményteszt az ETL-ben
Teljesítményteszt az ETL-ben egy olyan tesztelési technika, amely biztosítja, hogy egy ETL rendszer képes kezelni több felhasználó és tranzakció terhelését. Az ETL elsődleges célja Teljesítményfelmérés célja a munkamenet teljesítményének optimalizálása és javítása a teljesítménybeli szűk keresztmetszetek azonosításával és kiküszöbölésével. A forrás- és céladatbázisok, a térképpingAz s, a munkamenetek és maga a rendszer is tartalmazhat szűk keresztmetszeteket.
Az Informatica az egyik legjobb teljesítménytesztelési és hangolási eszköz.
Az ETL-tesztelő feladatai
Az ETL tesztelők főbb feladatai három kategóriába sorolhatók:
- Színpadasztal / SFS vagy MFS
- Üzleti átalakítási logika alkalmazott
- Target tábla betöltése a stage fájlból vagy táblából az átalakítás alkalmazása után
Az ETL tesztelők napi feladatai közé tartozik többek között:
- Tesztelje az ETL szoftvert
- Az ETL adattárház tesztelési komponensei
- Adatvezérelt háttér-tesztek végrehajtása
- Létrehozás, tervezés és kivitelezés teszt esetek, teszttervek és tesztkötegek
- Problémák azonosítása és megoldások kidolgozása a lehetséges problémákra
- Követelmények és tervezési előírások jóváhagyása
- Adatátvitelek validálása és lapos fájlok tesztelése
- SQL lekérdezések írása különféle forgatókönyvekhez, például számlálási tesztekhez
Az ETL tesztelés automatizálása
Az ETL tesztelés általános módszertana az SQL szkriptek használata vagy az adatok vizuális „szemmel történő elemzése”. Ezek a megközelítések időigényesek, hibalehetőségeket rejtenek, és ritkán adnak teljes eredményt. teszt lefedettségA végrehajtás felgyorsítása, a lefedettség javítása, a költségek csökkentése és a fejlesztés érdekében hiányosság Az éles és fejlesztési környezetekben az észlelés automatizálása napjaink egyik legfontosabb eszköze. Az egyik ilyen eszköz az Informatica.
A modern csapatok a hagyományos automatizálást mesterséges intelligencia által támogatott segítőkkel is ötvözik, amelyek transzformációs teszteket javasolnak, szintetikus forrásadatokat generálnak, és jelzik a séma eltolódását, így a tesztelők az ismétlődő szkriptkarbantartás helyett az összetett üzleti logikára koncentrálhatnak.
Az ETL-tesztelés legjobb gyakorlatai
- Győződjön meg arról, hogy az adatok megfelelően vannak átalakítva.
- Adatvesztés vagy csonkolás nélkül a vetített adatokat be kell tölteni az adattárházba.
- Győződjön meg arról, hogy az ETL alkalmazás megfelelően elutasítja az érvénytelen adatokat, szükség esetén alapértelmezett értékekkel helyettesíti azokat, és jelenti azokat.
- Győződjön meg arról, hogy az adatok az előírt és várható időkereten belül betöltődnek a raktárba a skálázhatóság és a teljesítmény érvényesítése érdekében.
- Minden metódusnak rendelkeznie kell megfelelő egységtesztekkel, függetlenül a láthatóságtól.
- A hatékonyságuk mérése érdekében minden egységtesztnek megfelelő lefedettségi technikákat kell alkalmaznia.
- Törekedj egy állításra tesztesetenként.
- Teremt egység tesztek amelyek a kivételeket célozzák meg.
Kijelentkezés - ETL tesztelési interjú kérdések és válaszok





