Čo je testovanie databázy a ako ho vykonávať?



Tento článok o testovaní databázy vysvetlí základné informácie o tom, čo je testovanie databázy, prečo sa vykonáva, aké sú jeho rôzne typy a aké populárne nástroje sa používajú.

Dáta sú srdcom každej softvérovej aplikácie a takisto aj v ktorom sú tieto údaje uložené. Ale s nárastom veľkosti dát alebo zložitosti databázy sa tiež zvyšuje, čo sťažuje manipuláciu s dátami. Preto je overovanie údajov veľmi potrebné. To, kde sa hodí testovanie databázy, pomáha pri kontrole kvality, bezpečnosti a správnosti údajov, ktoré aplikácia načítava alebo ukladá do databázy. Prostredníctvom tohto článku vám poskytnem úplné informácie.

Ďalej sú uvedené témy, ktorým sa venuje táto príručka:





Tak poďme na to.

Čo je to testovanie databázy?

Predtým, ako hovorím o testovaní databáz, dovoľte mi, aby som vás najskôr informoval o databázach.Databáza nie je nič iné ako systematické zhromažďovanie údajov, ktoré poskytuje úložisko údajov a pomáha pri manipulácii s údajmi. Spravovanie údajov je pomocou týchto databáz veľmi ľahkéatabázy používajú objekty na správu údajov, napríklad tabuľky na ukladanie údajov, zobrazenie na reprezentáciu údajov, funkcie a spúšťače na manipuláciu s údajmi.



Teraz,Testovanie databázy sa týka procesu overovania údajov, ktoré sú uložené v databáze, a to overením objektov ovládajúcich údaje a rôznych funkcií, ktoré ich obklopujú. Činnosti ako kontrola platnosti údajov, testovanie integrity údajov, kontrola výkonu, testovanie rôznych postupov, spúšťačov a funkcií v databáze sú počas testovania databázy všeobecne pokryté.

html značka pre vloženie zalomenia riadku

Aby bolo možné vykonať testovanie databázy, je veľmi dôležité mať dôkladné znalosti jazyka SQL. Nerobte si starosti, ak nemáte požadované odborné znalosti, môžete si prečítať tento článok Základy SQL začať s tým.

Prečo testovanie databázy?

Ako vieme, databáza je výpisom údajov, kde sa údaje zhromažďujú v enormnom množstve a ukladajú sa v štruktúrovanom formáte. Hoci (DataBase Management System) poskytuje organizovaný spôsob správy, načítania a ukladania týchto údajov, existujú prípady, keď sa údaje môžu stať nadbytočné, duplikované atď. V takom prípade sa objaví testovanie databázy, ktoré nám pomôže pri overovaní údajov. Ďalej uvádzam rôzne aspekty, na základe ktorých je potrebné overiť databázu:



  1. Mapovanie údajov
    Mapovanie údajov je neoddeliteľným aspektom testovania databázy, ktoré sa zameriava na overovanie údajov, ktoré prechádzajú medzi aplikáciou a backendovou databázou tam a späť.
  2. Overenie vlastností ACID
    KYSELINA znamenať TO tomicita, C. samostatnosť, Ja izolácia a D naliehavosť. Toto je ďalší dôležitý aspekt, ktorý je potrebné potvrdiť pri každej transakcii s databázou.

    • Atomicita : To znamená, že všetky transakcie s databázami sú atómové, to znamená, že transakcie môžu viesť k úspechu alebo zlyhaniu. Taktiež známy ako Všetko alebo nič .
    • Dôslednosť : To znamená, že stav databázy zostane v platnosti aj po dokončení transakcie.
    • Izolácia : To znamená, že je možné vykonať viac transakcií naraz, bez toho, aby to malo na seba vplyv a zmenilo stav databázy.
    • Trvanlivosť : To znamená, že akonáhle je transakcia vykonaná, zachová zmeny bez akýchkoľvek zlyhaní bez ohľadu na vplyv vonkajších faktorov.
  3. Integrita údajov
    Testovaním integrity údajov v databáze sa rozumie proces hodnotenia všetkých druhov procesov, operácií a metód, ktoré sa používajú na prístup, správu a aktualizáciu databázy, tiež známy ako CRUEL operácie. Toto sa zameriava výlučne na testovanie presnosti a konzistencie údajov uložených v databáze, aby sme dosiahli očakávané alebo požadované výsledky.
  4. Zhoda obchodných pravidiel
    S narastajúcou zložitosťou databáz sa tiež začínajú komplikovať rôzne komponenty, ako napríklad relačné obmedzenia, spúšťače, uložené procedúry atď. Aby sa tomu zabránilo, testeri poskytujú niektoré dotazy SQL, ktoré sú dostatočne vhodné na overenie zložitých objektov.

Typy testovania databázy

Nižšie sú uvedené 3 typy testovania databázy:

  1. Štrukturálne testovanie
  2. Funkčné testovanie
  3. Nefunkčné testovanie

Pozrime sa teraz na každý z týchto typov a ich podtypov postupne.

Štrukturálne testovanie

Testovanie štrukturálnej databázy je proces validácie všetkých prvkov, ktoré sa nachádzajú vo vnútri úložiska údajov a primárne sa používajú na ukladanie údajov. S týmito prvkami nemôžu koncoví používatelia priamo manipulovať. Validácia databázových serverov je jedným z najdôležitejších aspektov a testéri, ktorým sa podarí dokončiť túto fázu, úspešne získajú majstrovstvo v dotazoch SQL.

Rôzne typy štrukturálnych skúšok sú:

  • Testovanie schémy

Tento typ testovania sa tiež nazýva testovanie mapovania a vykonáva sa s cieľom zabezpečiť synchronizáciu mapovania schémy front-end a back-end. Niektoré z dôležitých kontrolných bodov tohto testovania sú:

    • Validuje rôzne typy formátov schém, ktoré sú spojené s databázami.
    • Pre nezmapované tabuľky / zobrazenia / stĺpce sa vyžaduje overenie.
    • Overenie je tiež potrebné na zabezpečenie konzistencie heterogénnych databáz v prostredí s celkovým mapovaním aplikácií.
    • Poskytuje rôzne nástroje na overenie schémy databázy.
  • Testovanie databázovej tabuľky a stĺpca

Niektoré z dôležitých kontrolných bodov tohto testovania sú:

    • Kompatibilita mapovania databázových polí a stĺpcov na koncovom serveri a klientskom rozhraní.
    • Overenie dĺžky a konvencie názvov databázových polí a stĺpcov podľa požiadaviek.
    • Zistenie a overenie všetkých nepoužívaných / nezmapovaných databázových tabuliek / stĺpcov.
    • Overuje sa kompatibilita dátového typu a dĺžok polí v stĺpcoch back-endovej databázy s predným koncom aplikácie.
    • Potvrdzuje, že používatelia sú schopní poskytnúť požadované vstupy pomocou databázových polí, ktoré sú špecifikované v dokumentoch špecifikácie obchodných požiadaviek.
  • Testovanie kľúčov a indexov

Niektoré z dôležitých kontrolných bodov tohto testovania sú:

    • Zaistite, aby boli požadované Primárny kľúč a Cudzí kľúč obmedzenia už existujú v požadovaných tabuľkách.
    • Overte odkazy na cudzie kľúče.
    • Zaistite, aby v dvoch tabuľkách boli údajový typ primárneho kľúča a zodpovedajúcich cudzích kľúčov rovnaké.
    • Overte názvy všetkých kľúčov a indexov na základe konvencií pomenovania.
    • Skontrolujte požadované polia a veľkosť a dĺžku indexov.
    • Zaistite vytvorenie klastrovaných indexov a neklastrovaných indexov v požadovaných tabuľkách podľa obchodných požiadaviek.
  • Testovanie uložených procedúr

Niektoré z dôležitých kontrolných bodov tohto testovania sú:

    • Validujte prijatie požadovaných štandardných konvencií kódovania, spracovania výnimiek a chýb pre všetky uložené procedúry vývojovým tímom vo všetkých moduloch testovanej aplikácie.
    • Zaistite, aby vývojový tím pokryl všetky podmienky / cykly použitím požadovaných vstupných údajov do testovanej aplikácie.
    • Skontrolujte, či vývojový tím správne použil operácie TRIM alebo nie pri každom načítaní údajov zo zadaných databázových tabuliek.
    • Zaistite, aby sa požadované výstupy generovali ručným vykonaním uložených procedúr.
    • Ručným vykonaním uložených procedúr zabezpečte, aby sa polia tabuľky aktualizovali podľa špecifikácie testovanej aplikácie.
    • Vykonaním uložených procedúr zaistite, aby sa požadované spúšťače implicitne vyvolali.
    • Zistite a overte všetky nepoužité uložené procedúry.
    • Overovanie stavu Null na úrovni databázy.
    • Zaistite, aby boli všetky uložené procedúry a funkcie vykonané a testované na prázdnej databáze, ktorá je testovaná.
    • Overte celkovú integráciu modulov uloženej procedúry, ako je uvedené v požiadavkách testovanej aplikácie.
  • Spúšťacie testovanie

Niektoré z dôležitých kontrolných bodov tohto testovania sú:

    • Potvrdzuje sa, že vo fáze kódovania spúšťačov sa dodržiavajú požadované konvencie kódovania.
    • Zaistite, aby vykonané spúšťače spĺňali požadované podmienky pre príslušné transakcie DML.
    • Po vykonaní spúšťačov skontrolujte, či sú údaje správne aktualizované.
    • Validovať funkcie ako Aktualizovať, Vložiť, Odstrániť spustí funkčnosť testovanej aplikácie.
  • Validácie databázového servera

Niektoré z dôležitých kontrolných bodov tohto testovania sú:

    • Overte konfigurácie databázového serveraako je uvedené v obchodných požiadavkách.
    • Zaistite, aby požadovaný používateľ vykonával iba tie úrovne akcií, ktoré vyžaduje testovaná aplikácia.
    • Zaistite, aby bol databázový server schopný uspokojiť potreby maximálneho počtu užívateľských transakcií, ktoré sú povolené v súlade so špecifikáciami obchodných požiadaviek.

Funkčné testovanie

Testovanie funkčnej databázy je proces, ktorý zaisťuje, aby transakcie a operácie vykonávané koncovými používateľmi boli v súlade s obchodnými špecifikáciami.

Rôzne typy funkčných testov sú:

  • Testovanie čiernej skrinky

Testovanie čiernej skrinky sa týka procesu, ktorý kontroluje rôzne funkčnosti overením integrácie databázy. V tomto prípade sú testovacie prípady zvyčajne jednoduché a slúžia na overenie prichádzajúcich a odchádzajúcich údajov z funkcie. Na otestovanie funkčnosti databázy sa používajú rôzne techniky, ako je technika grafov príčin a následkov, analýza hraničných hodnôt a rozdelenie podľa ekvivalencie. Spravidla sa vykonáva v počiatočných fázach vývoja a v porovnaní s inými funkčnými testami stojí menej. Má však niektoré nevýhody, ako napríklad niektoré chyby, ktoré nedokáže zistiť, a neexistuje nijaká špecifikácia, koľko programu by sa malo testovať.

  • Testovanie bielej skrinky

White Box Testing sa zaoberá vnútornou štruktúrou databázy a používatelia si neuvedomujú podrobnosti špecifikácie. Toto testovanie vyžaduje spustenie databázy a testovanie logických pohľadov, ktoré podporuje refaktoring databázy. Okrem toho funkcie databázy, spúšťače, zobrazenia, SQL dotazy , atď., sú v tomto testované tiež. Testovanie bielej skrinky sa používa na validáciu databázových tabuliek, dátových modelov, schémy databázy atď. Dodržiava pravidlá referenčnej integrity a na overenie konzistencie databázy vyberie predvolené hodnoty tabuľky.Na vykonávanie testov Bielej skrinky sa často používajú techniky ako pokrytie stavu, pokrytie rozhodnutia, pokrytie vyhlásenia atď. Na rozdiel od testovacej skrinky Black Box je možné ľahko zistiť chyby kódovania, aby sa eliminovali interné chyby v databáze. Jedinou nevýhodou tohto typu testovania je, že nezahŕňa príkazy SQL.

Nefunkčné testovanie

Nefunkčné testovanie je proces vykonávania záťažového testovania, záťažového testovania, kontroly minimálnych systémových požiadaviek, ktoré sú potrebné na splnenie obchodnej špecifikácie, spolu s detekciou rizík a optimalizáciou výkonu databázy.

Hlavné typy nefunkčných testov sú:

  • Testovanie záťaže

Primárnou funkciou vykonávania testovania zaťaženia je overiť vplyv na výkon väčšiny prebiehajúcich transakcií v databáze. Pri tomto testovaní sa vyžaduje, aby tester skontroloval nasledujúce podmienky a mínus

    • Aký je čas odozvy potrebný na vykonanie transakcie pre viacerých používateľov umiestnených na diaľku?
    • Aký je čas potrebný na načítanie konkrétnych záznamov v databáze?
  • Stresové testovanie

Stresové testovanie je testovací proces, ktorý sa vykonáva s cieľom identifikovať bod zlomu systému. Pri tomto testovaní sa teda aplikácia načíta až do okamihu, keď systém zlyhá.Tento bod je známy ako a bod zlomu databázového systému. Bežne používané nástroje na testovanie stresu sú LoadRunner a WinRunner .

Pozrime sa teraz, aké sú jednotlivé fázy testovania databázy.

Fázy testovania databázy

Testovanie DB nie je zdĺhavý proces a zahŕňa rôzne etapy životného cyklu testovania databázy v súlade s testovacími procesmi.

čo je spojka v Jave

Kľúčové fázy pri testovaní databázy sú:

  1. Nastavte predbežné požiadavky na testovanie
  2. Vykonajte testy
  3. Overte stav testu
  4. Overte výsledky
  5. Konsolidovať a zverejniť správu

Teraz, keď už viete, čo je testovanie databázy a ako ju vykonávať, dovoľte mi teraz priblížiť rôzne nástroje, ktoré sa väčšinou používajú na testovanie databázy.

Nástroje na testovanie databázy

Na trhu existuje veľa nástrojov, ktoré sa používajú na generovanie testovacích údajov, ich správu a konečné vykonávanie databázových testov, ako sú Testovanie záťaže a Regresné testovanie atď. Ďalej uvádzam niekoľko najpreferovanejších nástrojov:

Kategória Náradie
Nástroje na zabezpečenie údajov
  • Ochrana osobných údajov IBM Optim
Nástroje na testovanie záťaže
  • Výkonnosť webu
  • Rad View
  • Ortuť
Testovanie nástrojov na generovanie údajov
  • Data Factory
  • Generátor údajov DTM
  • Turbo dáta
Testujte nástroj na správu údajov
  • Správa testovacích údajov IBM Optim
Nástroje na testovanie jednotiek
  • SQLUnit
  • TSQLUnit
  • DBFit
  • DBUnit

Takže to bolo všetko o testovaní databázy. Týmto by som chcel uzavrieť tento článok. Dúfam, že vám tento článok pomohol pri zvyšovaní hodnoty vašich vedomostí. Viac informácií o SQL alebo databázach nájdete v našom komplexnom zozname na čítanie tu: .

Ak chcete získať štruktúrované školenie o MySQL, pozrite si naše ktorá prináša živé školenie vedené inštruktorom a skúsenosti s projektmi v reálnom živote. Toto školenie vám pomôže pochopiť MySQL do hĺbky a pomôže vám dosiahnuť osvojenie si témy.

Máte na nás otázku? Uveďte to v sekcii komentárov stránky ” Testovanie databázy “A ozvem sa ti.