Menü Bezárás

Wayne Yaddow cikkének első része: Adattárház tesztelés (I. rész) Magazinunk előző számában jelent meg magyarul. Az alábbiakban közöljük a cikk folytatását.

Adattárház tesztelés (II. rész)


Adattárház tesztelés ellenőrző listával bővítve

Valószínűleg a napi munka folyamán mindenki használ ellenőrző listákat. Ha az adattárház teszteléshez nem használunk ellenőrző listákat, akkor nagyon sokat vesztünk az eredmény minőségéből és a profizmusból is.

A procedurális adattárház ellenőrző lista tartalmazza az összes elvégzendő feladatot és a feladatok sorrendiségét is. Ez egy olyan segítség, amely áthidalja az emberi memória és a figyelem korlátait, így csökkentve a hibázás lehetőségét.

A cikk első részében, rámutattam a teljes körű adattárház tesztelés fontosságára és kiemeltem a folyamat kulcsfázisait. A második részben javaslatokat teszek az ellenőrző listákhoz, amelyek abban segítenek, hogy ne kerüljék el a figyelmünket a kulcsfontosságú lépések a bonyolult adattárház tesztelés tervezésekor, és a tesztek futtatásakor. Az ellenőrző listák a teljes tesztelési stratégia fejlesztésekor is segítenek a fókuszálásban és a tesztesetek priorizálásban, valamint hibák sikeres feltárásában.

Unit teszt ellenőrző lista

A legtöbb fejlesztő enyhén szólva sem képzett tesztelő. Programoznak, majd telepítik az elkészített részeket és elkezdik a soron következő feladat kódolását anélkül, hogy unit teszteket futtattak volna. Egy ellenőrző lista segítheti az adatbázis fejlesztőket a kód szisztematikus tesztelésében, mielőtt még az a QA csapathoz kerülne.

  • A mezőmegfeleltetések ellenőrzése a kritikus adatok vonatkozásában a staging (előkészítő) és az éles szinteken.
  • A szekvencia generátor által előállított adatok duplikációjának a vizsgálata.
  • A másodlagos kulcsok egyediségének ellenőrzése.
  • Az adattípus kényszerek ellenőrzése a staging és az éles szinteken.
  • Az adatbetöltés ellenőrzése és a hibaüzenetek elemzése minden ETL után. (ETL – extraction, transformation, load – kinyerés, átalakítás, betöltés)
  • A rosszul jobbról vagy balról levágott szövegek megkeresése.
  • Annak az ellenőrzése, hogy minden tábla és mező betöltődött-e a staging-ről.
  • Annak az ellenőrzése, hogy a nem NULL értékek biztosan betöltődtek.
  • Ellenőrizzük, hogy nincsenek adatcsonkolások.
  • Adattípusok és formátumok ellenőrzése.
  • Győződjünk meg róla, hogy nincsenek duplikált rekordok a tény táblákban.
  • A transzformációk pontosan az üzleti igények szerint hajtódtak-e végre?
  • A numerikus mezők pontosan betöltődtek?
  • Megvizsgálni, hogy az összes ETL csak a előre tervezett figyelmeztetésekkel futott le.
  • Az adattisztítások és hibakezelések vizsgálata.
  • Tárolt eljárások és adatleképezések ellenőrzése.

Az integrációs teszt ellenőrző listája

Egy integrációs teszt ellenőrzőlista abban segít, hogy meggyőződjünk róla, hogy az ETL folyamatok a tervek szerint a megfelelő függőségekkel hajtódtak-e végre.

  • Ellenőrizzük az adatbetöltés sikeres végrehajtását.
  • Ellenőrizzük, hogy a táblák jó adatokkal töltődtek-e fel és nincs-e adatvesztés.
  • Minden adatbetöltéshez kapcsolódó függést, feltételt vizsgáljunk meg – beleértve az összes szakaszt. (forrás táblák-> staging táblák; staging táblák -> adattárház táblák)
  • Minden ETL hibát és log-ot ellenőrizzünk a kijavíthatóság érdekében.
  • Ellenőrizzük, hogy az adatbetöltés akkor kezdődött és fejeződött be, amikor azt terveztük.

Teljesítményteszt ellenőrző lista

A nagy tömegű adatnövekedés miatt az adattárházban arra kell számítani, hogy az ETL futtatási idők megnyúlnak és a lekérdezések hosszabb időt vesznek igénybe. Ezek a változások egy jól átgondolt architektúrával és ETL-el kezelhetőek. A performancia tesztelés az adattárházban az ETL tervezés gyengeségeinek a feltárására hivatott, mint állományok újbóli kiolvasása, felesleges állományok létrehozása és tárolása. A teljesítményteszt ellenőrzőlista segít a performancia kérdések felderítésében.

  • Adatbetöltés csúcsra járatása annak érdekében, hogy az ETL végrehajtása a kért időintervallumon belül megtörténik-e.
  • Az ETL betöltési idejének összehasonlítása viszonylag kis adatmennyiséggel a skálázhatóság ellenőrzése érdekében. Az ETL futások idejének az ellenőrzése minden komponens esetében az esetleges gyengeségek felderítése miatt.
  • A visszautasított folyamatok monitorozása és annak a megfigyelése, hogy mennyi visszautasított adat kezelhető egy időben.
  • Az egyszerű és összetett join-ok vizsgálata a nagy volumenű lekérdezések futtatása érdekében. Együttműködés az üzlettel olyan lekérdezések kidolgozásában, amelyeknek a válaszideje elfogadható.

Rendszerteszt ellenőrző lista

Az adattárház tesztelés egyik fő oka annak az ellenőrzése, hogy az üzleti igények megfelelően lettek-e implementálva. Ez a szakasz tartalmaz adatellenőrzést, amely azt ellenőrzi, hogy az adatok a megfelelő módon vannak-e a cél táblákba transzformálva. A rendszerteszt ellenőrzőlista a következőképpen segít:

  • A rendszer funkcionalitása megfelel-e az üzlet által megfogalmazott igényeknek?
  • A forrás és cél rekordok számosságának a vizsgálata, a visszautasított vagy hibás adatok figyelembevételével.
  • Minden integráció és kapcsolat ellenőrzése (pl. a hardver és hálózati beállítások vizsgálata).
  • Minden tranzakció, adatbázis-frissítés és adatáramlás pontosságának vizsgálata.
  • Az üzleti jelentések megfelelőségének a vizsgálata.

Technikai teszt ellenőrző lista

A széleskörű és sokszínű adatforrások integrációjának a bonyolultsága miatt néhány tipikus kezdeti problémára felkészülhetünk. A technikai teszt ezért az összes egyéb (rendszer, performancia, UAT) előtt van.

  • A hardver a helyén van és megfelelően lett inicializálva, beleértve az ETL eszközöket, forráshoz való kapcsolódást és az üzleti objektumokat?
  • Minden szoftver megfelelően lett migrálva a tesztkörnyezetbe?
  • Minden kapcsolat működik a rendszerek között?
  • Minden tranzakció lefut, nincs lefagyás?

Összefoglalás

Az összes itt említett ellenőrzőlista – habár nem teljesen részletes – de abban bízok, hogy értékes lesz az adattárház tesztelési projektekben. Az ellenőrzőlisták segítenek a magasabb minőség elérésében a memóriánk adta lehetőségek kompenzálásával. Segítenek a bonyolult adattárház tesztelések megtervezésében és futtatásában, amely kulcsfontosságú az adattárház tesztelési munkában és annak a sikerességében.

Forrás: http://ibmdatamag.com/2013/07/data-warehouse-testing-part-2/
Szerző: Wayne Yaddow

A szerző

Wayne Yaddow
Wayne informatikai tanácsadóként, vezető QA szakemberként dolgozik. Nagy tapasztalata van az adatmigrációk és az adatok integrációja területén. Különösen a pénzügyi ágazatban nagy adattárház projekteken tevékenykedik. Ő az egyik társszerzője a "Testing the Data Warehouse: Assuring Data Content, Data Structures and Quality" című könyvnek.
Vissza