Какво е тестване на база данни и как да се извърши?



Тази статия за тестване на бази данни ще обясни основите на това какво е тестване на база данни, защо се извършва, различните типове и използваните популярни инструменти.

Данните са сърцето на всяко софтуерно приложение, както и който съхранява тези данни. Но с увеличаването на размера на данните или сложността на базата данни също се увеличава, което затруднява обработката на данните. По този начин валидирането на данните става много необходимо. Тук тестването на база данни е полезно и помага за проверка на качеството, сигурността и коректността на данните, които дадено приложение извлича или съхранява в базата данни. Посредством тази статия ще ви дам пълна информация за нея.

По-долу са разгледани темите в този урок:





Така че нека да започнем.

Какво е тестване на база данни?

Преди да говоря за това какво е тестване на бази данни, нека първо ви запозная с базите данни.Базата данни не е нищо друго освен систематично събиране на данни, което осигурява съхранение на данни и помага при манипулирането им. Управлението на данни става много лесно, като се използват тези бази данни като databases използват обекти за управление на данните като таблици за съхранение на данни, изглед за представяне на данни, функции и тригери за манипулиране на данни.



Сега,Тестване на база данни се отнася до процеса на валидиране на данните, които се съхраняват в база данни, чрез проверка на обектите, контролиращи данните и различни функции около тях. Като цяло дейностите като проверка на валидността на данните, тестване на целостта на данните, проверка на производителността се отнасят, тестване на различни процедури, задействания и функции в базата данни са обхванати по време на тестването на базата данни.

клас __init__ python

Но за да се извърши тестване на база данни, наличието на солидни познания по SQL е много важно. Не се притеснявайте, ако нямате необходимия опит, можете да се обърнете към тази статия на Основи на SQL за да започнете с него.

Защо тестване на база данни?

Както знаем, базата данни представлява сметище от данни, където данните се събират в огромно количество и се съхраняват в структуриран формат. Макар че (DataBase Management System) осигурява организиран начин за управление, извличане и съхраняване на тези данни, има случаи, при които данните могат да станат излишни, да се дублират и т.н. В такива случаи тестването на базата данни се появява, което ни помага при валидирането на данните. По-долу изброих различни аспекти, въз основа на които базата данни трябва да бъде валидирана:



  1. Картографиране на данни
    Картографирането на данни е неразделна част от тестването на базата данни, която се фокусира върху валидиране на данните, които се движат напред-назад между приложението и базата данни.
  2. Проверка на свойствата на ACID
    КИСЕЛИНА означава ДА СЕ самоувереност, ° С постоянство, Аз изолация и д урабилност. Това е друг важен аспект, който трябва да бъде потвърден срещу всяка транзакция на базата данни.

    • Атомност : Това означава, че всички транзакции с бази данни са атомни, т.е. транзакциите могат да доведат до успех или неуспех. Също известен като Всичко или нищо .
    • Последователност : Това означава, че състоянието на базата данни ще остане валидно след приключване на транзакцията.
    • Изолация : Това означава, че множество транзакции могат да бъдат изпълнени наведнъж, без да се влияят една върху друга и да променят състоянието на базата данни.
    • Трайност : Това означава, че след като транзакцията бъде ангажирана, тя ще запази промените без грешки, независимо от ефекта на външни фактори.
  3. Целостта на данните
    Тестването на целостта на данните в база данни се отнася до процеса на оценка на всички видове процеси, операции и методи, които се използват за достъп, управление и актуализиране на базата данни, известни също като ЖЕСТКО операции. Това се фокусира единствено върху тестване на точността и последователността на данните, съхранявани в базата данни, така че да получим очакваните или желаните резултати.
  4. Съответствие на бизнес правилата
    С увеличаването на сложността на базите данни различни компоненти като релационни ограничения, тригери, съхранени процедури и т.н. също започват да се усложняват. За да избегнат това, тестерите предоставят някои SQL заявки, които са достатъчно подходящи за валидиране на сложните обекти.

Видове тестване на база данни

Има 3 вида тестване на база данни, които изброих по-долу:

  1. Структурно изпитване
  2. Функционално тестване
  3. Нефункционално тестване

Нека сега разгледаме всеки един от тези типове и техните подтипове един по един.

Структурно изпитване

Структурното тестване на база данни е процес на валидиране на всички елементи, които се намират в хранилището на данни и се използват предимно за съхранение на данни. Тези елементи не могат да бъдат манипулирани директно от крайните потребители. Проверката на сървърите на бази данни е едно от най-важните съображения и тестерите, които успяват да завършат тази фаза, успешно придобиват майсторство в SQL заявки.

Различни видове структурни тестове са:

  • Тестване на схемата

Този тип тестване е известен още като тестване на картографиране и се извършва, за да се гарантира, че схематичното картографиране на предния и задния край е синхронизирано. Някои от важните контролни точки при това тестване са:

    • Проверява различни видове формати на схеми, които са свързани с базите данни.
    • Необходима е проверка за немапирани таблици / изгледи / колони.
    • Необходима е и проверка, за да се осигури съгласуваността на разнородните бази данни в среда с цялостното картографиране на приложенията.
    • Предоставя различни инструменти за проверка на схемата на базата данни.
  • Тестване на таблица и колона на база данни

Някои от важните контролни точки при това тестване са:

    • Съвместимостта на картографиране на полета и колони в задния и предния край.
    • Проверка на дължината и конвенцията за именуване на полетата и колоните на базата данни съгласно изискванията.
    • Откриване и валидиране на неизползвани / немапирани таблици / колони на база данни.
    • Проверка на съвместимостта на типа данни и дължините на полетата в колоните на базата данни с предния край на приложението.
    • Потвърждава, че потребителите могат да предоставят желани входове, използвайки полетата на базата данни, които са посочени в документите за спецификация на бизнес изискванията.
  • Тестване на ключове и индекси

Някои от важните контролни точки при това тестване са:

    • Уверете се, че е необходимо Първичен ключ и Външен ключ ограниченията вече са налице за необходимите таблици.
    • Проверете референциите на външните ключове.
    • Уверете се, че в две таблици типът данни на първичния ключ и съответните външни ключове са еднакви.
    • Проверете имената на всички ключове и индекси въз основа на конвенциите за именуване.
    • Проверете размера и дължината на задължителните полета и индекси.
    • Осигурете създаването на клъстерирани индекси и неклъстерирани индекси в необходимите таблици според бизнес изискванията.
  • Тестване на съхранени процедури

Някои от важните контролни точки при това тестване са:

    • Проверете приемането на необходимите стандартни конвенции за кодиране, обработка на изключения и грешки за всички съхранени процедури от екипа за разработка във всички модули на тестваното приложение.
    • Уверете се, че екипът за разработки е покрил всички условия / цикли, като приложите необходимите входни данни към тестваното приложение.
    • Проверявайте дали екипът за разработки е приложил правилно операциите TRIM или не всеки път, когато данните са извлечени от посочените таблици на базата данни.
    • Уверете се, че необходимите изходи се генерират чрез ръчно изпълнение на съхранените процедури.
    • Уверете се, че полетата на таблицата се актуализират, както е посочено от тестваното приложение, като ръчно изпълнявате съхранените процедури.
    • Уверете се, че необходимите задействания са имплицитно извикани чрез изпълнение на съхранените процедури.
    • Открийте и проверете всички неизползвани съхранени процедури.
    • Проверка на Null условието на ниво база данни.
    • Уверете се, че всички съхранени процедури и функции са изпълнени и тествани в празната база данни, която е в процес на тестване.
    • Проверете цялостната интеграция на съхранените модули от процедури, както е посочено в изискванията на тестваното приложение.
  • Тестване на задействане

Някои от важните контролни точки при това тестване са:

    • Проверка, че необходимите конвенции за кодиране се спазват във фазата на кодиране на тригерите.
    • Уверете се, че изпълнените тригери отговарят на необходимите условия за съответните DML транзакции.
    • Проверете дали данните се актуализират правилно, след като тригерите бъдат изпълнени.
    • Проверете функционалностите като Актуализиране, Вмъкване, Изтриване задейства функционалността на тестваното приложение.
  • Проверки на сървъра на база данни

Някои от важните контролни точки при това тестване са:

    • Проверете конфигурациите на сървъра на базата данникакто е посочено в бизнес изискванията.
    • Уверете се, че необходимият потребител изпълнява само тези нива на действия, които се изискват от тестваното приложение.
    • Уверете се, че сървърът на базата данни е в състояние да отговори на нуждите на максималния брой потребителски транзакции, които са разрешени, както е в спецификациите на бизнес изискванията.

Функционално тестване

Тестването на функционална база данни е процесът, който гарантира, че транзакциите и операциите, извършвани от крайните потребители, са в съответствие с изискванията на бизнеса.

Различни видове функционални тестове са:

  • Тестване на черна кутия

Black Box Testing се отнася до процеса, който проверява различни функционалности чрез проверка на интеграцията на базата данни. При това тестовите случаи обикновено са прости и се използват за проверка на входящите и изходящите данни от функцията. За тестване на функционалността на базата данни се използват различни техники като техника за графично-следствено действие, анализ на гранични стойности и разделяне на еквивалентността. Обикновено се извършва на ранните етапи на разработка и струва по-малко в сравнение с други функционални тестове. Но той идва с някои недостатъци, като някои грешки не могат да бъдат открити от него и няма спецификация за това колко от програмата трябва да бъде тествана.

  • Тестване на бяла кутия

White Box Testing се занимава с вътрешната структура на базата данни и потребителите не са наясно с подробностите за спецификацията. Това тестване изисква задействане на база данни и тестване на логически изгледи, което поддържа рефакторинг на базата данни. Освен това, функции на базата данни, тригери, изгледи, SQL заявки и др., също са тествани в това. Тестването на бялото поле се използва за валидиране на таблиците на базата данни, модели на данни, схема на базата данни и др. Той се придържа към правилата за референтна цялост и избира стойностите на таблицата по подразбиране, за да провери съгласуваността на базата данни.Техники като покритие на условията, покритие на решения, покритие на изявления и т.н. често се използват за извършване на тестване на White Box. За разлика от тестването на черна кутия, грешките при кодирането могат лесно да бъдат открити, за да се премахнат вътрешните грешки, налични в базата данни. Единственият недостатък на този тип тестване е, че не обхваща SQL изразите.

Нефункционално тестване

Нефункционалното тестване е процес на извършване на тестване на натоварване, стрес тестване, проверка на минималните системни изисквания, които са необходими за изпълнение на бизнес спецификацията, заедно с откриване на рискове и оптимизиране на работата на базата данни.

Основните видове нефункционално тестване са:

  • Тестване на товара

Основната функция на извършването на тестване на натоварване е да се провери въздействието на производителността на повечето от текущите транзакции в базата данни. При това тестване е необходим тестер, който да провери следните условия и минус

    • Какво е времето за реакция, необходимо за изпълнение на транзакции за множество потребители, разположени отдалечено?
    • Какво е времето, необходимо на базата данни за извличане на конкретните записи?
  • Стресиране

Стрес тестването е процес на тестване, който се извършва, за да се идентифицира точката на прекъсване на системата. По този начин при това тестване приложението се зарежда до момента, в който системата откаже.Тази точка е известна като a точка на пречупване на системата от бази данни. Често използваните инструменти за стрес тестване са LoadRunner и WinRunner .

Нека сега видим кои са различните етапи от тестването на базата данни.

Етапи на тестване на база данни

DB тестването не е досаден процес и включва различни етапи от жизнения цикъл на тестване на базата данни в съответствие с тестовите процеси.

е магистър следдипломна степен

Ключовите етапи при тестването на база данни са:

  1. Настройте предварителни условия за тестване
  2. Изпълнете тестовете
  3. Проверете състоянието на теста
  4. Проверка на резултатите
  5. Консолидиране и публикуване на доклад

Сега, когато сте наясно какво е тестване на база данни и как да го извършите, нека сега хвърлям малко светлина върху различни инструменти, които се използват главно за тестване на база данни.

Инструменти за тестване на база данни

На пазара има многобройни инструменти, които се използват за генериране на тестови данни, управлението им и накрая извършване на тестване на база данни като тестване на натоварване и тестване на регресия и др. По-долу изброих няколко от най-предпочитаните инструменти:

Категория Инструменти
Инструменти за защита на данните
  • Поверителност на данните на IBM Optim
Заредете инструменти за тестване
  • Уеб изпълнение
  • Rad View
  • живак
Тествайте инструменти за генериране на данни
  • Фабрика за данни
  • DTM генератор на данни
  • Турбо данни
Инструмент за управление на тестови данни
  • IBM Optim Test Data Management
Инструменти за единично тестване
  • SQLUnit
  • TSQLUnit
  • DBFit
  • DBUnit

Така че всичко беше свързано с тестване на база данни. С това бих искал да завърша тази статия. Надявам се, че тази статия ви е помогнала да добавите стойност към вашите знания. За повече информация относно SQL или бази данни можете да се обърнете към нашия изчерпателен списък за четене тук: .

Ако искате да получите структурирано обучение по MySQL, разгледайте нашето което се предлага с обучение под ръководството на инструктори на живо и опит в реалния живот на проекти. Това обучение ще ви помогне да разберете MySQL в дълбочина и ще ви помогне да постигнете майсторство по темата.

Имате въпрос към нас? Моля, споменете го в раздела за коментари на ” Тестване на база данни ”И ще се свържа с вас.