Co je Testování databáze a jak jej provádět?



Tento článek o testování databáze vysvětlí základy toho, co je testování databáze, proč se provádí, její různé typy a používané populární nástroje.

Data jsou srdcem každé softwarové aplikace, stejně jako kde jsou tyto údaje uloženy. Ale s nárůstem velikosti dat nebo složitostí databáze se také zvyšuje, což ztěžuje zpracování dat. Ověření dat se tak stává velmi nezbytným. To, kde testování databáze přijde vhod a pomůže při kontrole kvality, zabezpečení a správnosti dat, která aplikace načítá nebo ukládá do databáze. Prostřednictvím tohoto článku vám poskytnu úplný přehled.

Níže uvádíme témata zahrnutá v tomto výukovém programu:





Pojďme tedy začít.

Co je to testování databáze?

Než promluvím o tom, co je testování databáze, dovolte mi nejprve vás seznámit s databázemi.Databáze není nic jiného než systematické shromažďování dat, které poskytuje úložiště dat a pomáhá při manipulaci s daty. Správa dat se stává velmi snadnou pomocí těchto databází jako databáze používají objekty pro správu dat, jako jsou tabulky pro ukládání dat, zobrazení pro reprezentace dat, funkce a spouštěče pro manipulaci s daty.



Nyní,Testování databáze označuje proces ověřování dat, která jsou uložena v databázi, ověřením objektů ovládajících data a různých funkcí, které je obklopují. Obecně platí, že během testování databáze jsou pokryty činnosti jako kontrola platnosti dat, testování integrity dat, kontrola výkonu, testování různých postupů, spouštěčů a funkcí v databázi.

co dělá výstraha v JavaScriptu

Aby bylo možné provést testování databáze, je velmi důležité mít dobrou znalost jazyka SQL. Nebojte se, pokud nemáte požadované odborné znalosti, můžete se podívat na tento článek Základy SQL začít s tím.

Proč testování databází?

Jak víme, databáze je výpisem dat, kde jsou data shromažďována v enormním množství a ukládána ve strukturovaném formátu. Ačkoli (DataBase Management System) poskytuje organizovaný způsob správy, načítání a ukládání těchto dat, existují případy, kdy mohou být data nadbytečná, duplikovaná atd. V takových případech se do obrazu dostane testování databáze, které nám pomůže při ověřování dat. Níže jsem uvedl různé aspekty, na základě kterých je třeba databázi ověřit:



  1. Mapování dat
    Mapování dat je nedílnou součástí testování databáze, která se zaměřuje na ověřování dat, která procházejí sem a tam mezi aplikací a back-endovou databází.
  2. Ověření vlastností ACID
    KYSELINA znamená NA tomicita, C onsistency, solace a D naléhavost. Toto je další důležitý aspekt, který je třeba potvrdit u každé transakce databáze.

    • Atomicita : To znamená, že všechny databázové transakce jsou atomové, tzn. Že transakce mohou mít za následek buď úspěch, nebo selhání. Také známý jako Všechno nebo nic .
    • Konzistence : To znamená, že stav databáze zůstane v platnosti i po dokončení transakce.
    • Izolace : To znamená, že lze provést více transakcí najednou, aniž by to ovlivnilo jeden druhého a změnilo stav databáze.
    • Trvanlivost : To znamená, že jakmile je transakce potvrzena, zachová změny bez jakéhokoli selhání bez ohledu na účinek externích faktorů.
  3. Integrita dat
    Testování integrity dat v databázi se týká procesu hodnocení všech druhů procesů, operací a metod, které se používají pro přístup, správu a aktualizaci databáze, také známý jako KRUTÝ operace. Toto se zaměřuje výhradně na testování přesnosti a konzistence dat uložených v databázi, abychom získali očekávané nebo požadované výsledky.
  4. Shoda obchodních pravidel
    S nárůstem složitosti databází se také začnou komplikovat různé komponenty, jako jsou relační omezení, spouštěče, uložené procedury atd. Aby se tomu zabránilo, testeři poskytují některé dotazy SQL, které jsou dostatečně vhodné k ověření komplexních objektů.

Druhy testování databáze

Níže jsou uvedeny 3 typy testování databáze:

  1. Strukturální testování
  2. Funkční testování
  3. Nefunkční testování

Podívejme se nyní na každý z těchto typů a jejich podtypů jeden po druhém.

Strukturální testování

Testování strukturální databáze je proces ověřování všech prvků, které jsou přítomny uvnitř úložiště dat a jsou primárně používány pro ukládání dat. S těmito prvky nemohou koncoví uživatelé manipulovat přímo. Ověření databázových serverů je jednou z nejdůležitějších úvah a testeři, kterým se podaří dokončit tuto fázi, úspěšně získají mistrovství v dotazech SQL.

Různé typy strukturálních zkoušek jsou:

  • Testování schématu

Tento typ testování se také nazývá testování mapování a provádí se, aby se zajistilo, že mapování schématu front-endu a back-endu jsou synchronizované. Některé z důležitých kontrolních bodů tohoto testování jsou:

    • Ověří různé typy formátů schémat, které jsou přidruženy k databázím.
    • U nezmapovaných tabulek / pohledů / sloupců je vyžadováno ověření.
    • Ověření je také nutné k zajištění konzistence heterogenních databází v prostředí s celkovým mapováním aplikace.
    • Poskytuje různé nástroje pro ověření schématu databáze.
  • Testování databázové tabulky a sloupce

Některé z důležitých kontrolních bodů tohoto testování jsou:

    • Kompatibilita mapování databázových polí a sloupců na back-endu a front-endu.
    • Ověření délky a konvence pojmenování databázových polí a sloupců podle požadavků.
    • Zjištění a ověření nevyužitých / nezmapovaných databázových tabulek / sloupců.
    • Ověření kompatibility datového typu a délek polí ve sloupcích back-endové databáze s frontendem aplikace.
    • Ověřuje, že uživatelé jsou schopni poskytnout požadované vstupy pomocí databázových polí, která jsou uvedena v dokumentech specifikací obchodních požadavků.
  • Testování klíčů a indexů

Některé z důležitých kontrolních bodů tohoto testování jsou:

    • Ujistěte se, že je požadováno Primární klíč a Cizí klíč omezení již existují na požadovaných tabulkách.
    • Ověřte odkazy na cizí klíče.
    • Zajistěte, aby ve dvou tabulkách byl datový typ primárního klíče a odpovídajících cizích klíčů stejný.
    • Ověřte názvy všech klíčů a indexů na základě konvencí pojmenování.
    • Zkontrolujte požadovaná pole a velikost a délku indexů.
    • Zajistěte vytvoření indexů seskupených a indexů neseskupených v požadovaných tabulkách podle obchodních požadavků.
  • Testování uložených procedur

Některé z důležitých kontrolních bodů tohoto testování jsou:

    • Ověřte přijetí požadovaných standardních konvencí kódování, zpracování výjimek a chyb pro všechny uložené procedury vývojovým týmem ve všech modulech testované aplikace.
    • Zajistěte, aby vývojový tým pokryl všechny podmínky / smyčky použitím požadovaných vstupních dat do testované aplikace.
    • Zkontrolujte, zda vývojový tým správně použil operace TRIM nebo ne pokaždé, když byla data načtena ze zadaných databázových tabulek.
    • Zajistěte, aby se požadované výstupy generovaly ručním provedením uložených procedur.
    • Zajistěte, aby byla pole tabulky aktualizována podle zadání testované aplikace ručním provedením uložených procedur.
    • Zajistěte, aby požadované spouštěče byly implicitně vyvolány spuštěním uložených procedur.
    • Zjistěte a ověřte všechny nepoužité uložené procedury.
    • Ověření stavu Null na úrovni databáze.
    • Zajistěte, aby všechny uložené procedury a funkce byly provedeny a testovány na prázdné databázi, která je testována.
    • Ověřte celkovou integraci modulů uložené procedury, jak je uvedeno v požadavcích testované aplikace.
  • Testování spouště

Některé z důležitých kontrolních bodů tohoto testování jsou:

    • Ověření, že ve fázi kódování spouštěčů jsou dodržovány požadované konvence kódování.
    • Zajistěte, aby provedené spouštěče splňovaly požadované podmínky pro příslušné transakce DML.
    • Po provedení spouštěčů zkontrolujte, zda jsou data správně aktualizována.
    • Ověřte funkce, jako je Aktualizovat, Vložit, Odstranit, spustí funkčnost testované aplikace.
  • Ověření databázového serveru

Některé z důležitých kontrolních bodů tohoto testování jsou:

    • Ověřte konfigurace databázového serverujak je uvedeno v obchodních požadavcích.
    • Zajistěte, aby požadovaný uživatel prováděl pouze ty úrovně akcí, které vyžaduje testovaná aplikace.
    • Zajistěte, aby byl databázový server schopen uspokojit potřeby maximálního počtu uživatelských transakcí, které jsou povoleny, jak je uvedeno ve specifikacích obchodních požadavků.

Funkční testování

Testování funkční databáze je proces, který zajišťuje, že transakce a operace prováděné koncovými uživateli jsou konzistentní s plněním obchodních specifikací.

Různé typy funkčních testů jsou:

  • Testování černé skříňky

Black Box Testing se týká procesu, který kontroluje různé funkce ověřením integrace databáze. V tomto případě jsou testovací případy obvykle jednoduché a slouží k ověření příchozích a odchozích dat z funkce. K testování funkčnosti databáze se používají různé techniky, jako je technika grafů příčin a následků, analýza hraničních hodnot a rozdělení ekvivalence. Obvykle se provádí v raných fázích vývoje a stojí méně než ve srovnání s jinými funkčními testy. Přichází však s některými nevýhodami, jako by jím nemohly být detekovány některé chyby a neexistuje žádná specifikace toho, jak velká část programu by měla být testována.

  • Testování bílé skříňky

White Box Testing se zabývá vnitřní strukturou databáze a uživatelé si neuvědomují podrobnosti specifikace. Toto testování vyžaduje spouštěče databáze a testování logických pohledů, které podporuje refaktorování databáze. Kromě toho funkce databáze, spouštěče, zobrazení, SQL dotazy , atd., jsou také testovány v tomto. Testování bílé skříňky se používá k ověření databázových tabulek, datových modelů, schématu databáze atd. Dodržuje pravidla referenční integrity a vybere výchozí hodnoty tabulky k ověření konzistence databáze.K testování White Box se často používají techniky jako pokrytí podmínek, pokrytí rozhodnutí, pokrytí prohlášení atd. Na rozdíl od Black Boxu mohou být chyby kódování snadno detekovány, aby se odstranily interní chyby přítomné v databázi. Jedinou nevýhodou tohoto typu testování je, že nepokrývá příkazy SQL.

Nefunkční testování

Nefunkční testování je proces provádění zátěžového testování, zátěžového testování, kontroly minimálních systémových požadavků, které jsou vyžadovány ke splnění obchodní specifikace, spolu s detekcí rizik a optimalizací výkonu databáze.

Hlavní typy nefunkčního testování jsou:

  • Testování zátěže

Primární funkcí provádění testování zátěže je ověřit dopad výkonu většiny spuštěných transakcí v databázi. V tomto testování je vyžadován tester ke kontrole následujících podmínek a minus

    • Jaká je doba odezvy vyžadovaná pro provádění transakcí pro více uživatelů umístěných na dálku?
    • Jak dlouho zabere databáze načtení konkrétních záznamů?
  • Stresové testování

Stresové testování je testovací proces, který se provádí k identifikaci bodu zlomu systému. Při tomto testování se tedy aplikace načte až do bodu, kdy systém selže.Tento bod se nazývá a bod zlomu databázového systému. Běžně používané nástroje zátěžového testování jsou LoadRunner a WinRunner .

Pojďme se nyní podívat, jaké jsou různé fáze testování databáze.

Fáze testování databáze

Testování DB není zdlouhavý proces a zahrnuje různé fáze životního cyklu testování databáze v souladu s testovacími procesy.

co je vazba v Javě

Klíčové fáze testování databáze jsou:

  1. Nastavte předběžné požadavky na testování
  2. Proveďte testy
  3. Ověřte stav testu
  4. Ověření výsledků
  5. Konsolidujte a publikujte zprávu

Nyní, když jste si vědomi toho, co je testování databáze a jak ji provádět, dovolte mi nyní objasnit různé nástroje, které se hlavně používají k testování databáze.

Nástroje pro testování databáze

Existuje mnoho nástrojů na trhu, které se používají ke generování testovacích dat, jejich správě a nakonec k testování databáze, jako je Testování zátěže a Regresní testování atd. Níže jsem uvedl několik nejvýhodnějších nástrojů:

Kategorie Nástroje
Nástroje pro zabezpečení dat
  • Ochrana osobních údajů IBM Optim
Nástroje pro testování zátěže
  • Výkon webu
  • Rad View
  • Rtuť
Otestujte nástroje generátoru dat
  • Data Factory
  • Generátor dat DTM
  • Turbo data
Testujte nástroj pro správu dat
  • Správa dat IBM Optim Test Data
Nástroje pro testování jednotek
  • SQLUnit
  • TSQLUnit
  • DBFit
  • DBUnit

Takže to bylo všechno o testování databáze. Tímto bych chtěl uzavřít tento článek. Doufám, že vám tento článek pomohl při zvyšování hodnoty vašich znalostí. Další informace o SQL nebo databázích najdete v našem komplexním seznamu pro čtení zde: .

Pokud si přejete získat strukturované školení o MySQL, podívejte se na naše který přichází s živým tréninkem vedeným instruktorem a zkušenostmi z reálného projektu. Toto školení vám pomůže porozumět MySQL do hloubky a pomůže vám dosáhnout zvládnutí předmětu.

Máte na nás dotaz? Uveďte to prosím v sekci komentářů na stránce ” Testování databáze „A ozvu se vám.