simple approach xml database testing
Тази статия ще ви помогне да разберете XML за Концепция за тестване на база данни , което е предизвикателство тип тестване .
Сравнението на данните е критична задача за качествено изпълнение. Всеки недостатък ще доведе до една или много грешки в приложение.
XML е формат за електронно съобщение, който съдържа данни, а базата данни е физическо хранилище с таблици / колони, съдържащи данни.
Повечето приложения обменят данни помежду си. Тези комуникации могат да бъдат под формата на XML съобщения, които съдържат данни. Също така тези данни се съхраняват в система от бази данни и при необходимост данните се извличат от приложенията.
Прочетете също => Отличен начин за тестване на данни с помощта на XML технологии
Повечето домейни като финанси, маркетинг, продажби, електронна търговия, автомобили, логистика и производство използват тази техника за комуникация на данни с приложения.
За да се направи успешно тестването на XML към база данни, най-важният вход е документ за картографиране който дефинира всеки елемент в XML спрямо колоните в базата данни.
Документът за картографиране ще осигури пълно представяне на елементите (XML) към асоциацията на колоните (DB). Стойностите на XML елементите могат да бъдат входни данни за DB таблици или обратно.
сравнете два файла ред по ред
С тази статия ще разберете добре как да тествате данните за XML съобщения в данните от базата данни за точност на данните.
Какво ще научите:
- Нека поговорим за XML и база данни:
- Архитектура на приложението:
- Пример:
- Как да тествате:
- Пример от реалния живот:
- Сценарии за отказ:
- Заключение:
- Препоръчително четене
Нека поговорим за XML и база данни:
Приложенията използват различни техники за комуникация помежду си. Комуникацията на съобщения чрез XML е един от тях. XML е надеждна техника за комуникация на съобщения (данни) между две приложения. XML съдържа набор от елементи, които имат специфични стойности. Понякога стойностите могат да бъдат NULL или празни.
Базата данни съхранява данни под формата на таблици. Базата данни съдържа няколко таблици. Приложението може да подава данни в таблицата в база данни, а също така данните от таблицата могат да бъдат извличани от приложения, когато е необходимо.
Сега приложенията могат да съхраняват / извличат данни от таблици на бази данни под формата на XML и това е доста надеждна / гъвкава техника за това.
Архитектура на приложението:
Като тестер е важно да:
- Преминете през продуктовата архитектура, за да разберете как приложенията комуникират съобщения между модули / бази данни / След като преминете през тази информация и установите, че има несъответствия / въпроси, BA / SA може да се свърже с вас за разяснения.
- Разберете потоците от данни за приложенията нагоре и надолу.
- Входящият и изходящият поток от данни към приложение.
В някои случаи приложенията нагоре и надолу по веригата могат да бъдат бази данни на различни приложения и те обменят / предават данни в XML формат, използвайки съхранени процедури, уеб услуги, API и др. В други може да има комбинация от бази данни и приложения, които предават данни един с друг.
Пример:
За тази статия за тестване на XML към база данни, нека разгледаме приложение, което комуникира с база данни за съхраняване на данни.
Имаме приложение надолу по веригата IBAPX , който предава съобщения в XML формат към приложение за база данни MYDBX . Имаме приложение нагоре по веригата OBAPX , който извлича данни от MYDBX за приложение за отчитане RPTX и това е приложение нагоре към OBAPX .
Забележка: Преди да започнете, познавайте технологията, използвана за комуникация на междинен софтуер (Съхранена процедура, Webservice, API и т.н.) и познавайте архитектурата ясно. Тази информация обикновено е в документа за проектиране или в екипите на SA / BA / Dev.
Сега приложение IBAPX съхранява данни в приложението за бази данни MYDBX. За да разберем кой елемент на xml е картографиран в колоната на таблицата, трябва да се обърнем документ за картографиране . Понякога XML елементите и имената на колони могат да бъдат еднакви или не. Разликата се дължи на бизнес нужда.
E.g . да кажем, че IBAPX изпраща елемент с името като номер на продажби , но когато MYDBX съхранява същата стойност на елемент в таблица, тя се отнася към него p_orderid име на колона. Това може да се дължи на факта, че XML елементът е посочен като обект, свързан с продажбите, когато същата стойност се съхранява в таблицата, името на колоната може да е било променено, за да се отнася до производствената употреба. Това може да се промени в други приложения според бизнес нуждите.
Как да тествате:
Сега как точно може тестер да тества всички сценарии ефективно и ефикасно? Нека да обсъдим.
Първо вземете входния XML файл и проверете структурата на XML т.е. елементи. Това може да се направи с помощта на XSD, който дефинира структурата за съответния XML.
XSD файлът изглежда като XML и той определя структурата на XML, като име на елемент, тип елемент, minOccurs, maxOccurs и др. След като XML валидирането приключи, експортирайте го в Excel. Просто плъзнете xml файла на нов Excel лист. Това ще ви даде изскачащ прозорец, който пита как искате да отворите файла, просто изберете ‘Като XML таблица’. Данните ще се запишат в Excel файла като таблица.
Можете да видите данни, попълнени в таблицата, да поискате таблицата с конкретните данни и да извлечете записа. Копирайте данните в същия файл на Excel на друг лист. Сега, използвайки EXACT функцията в Excel, можете лесно да сравните XML данните с данните от DB. Уверете се, че ще сравнявате само данни, но не и имената на колоните.
По този начин можете да сравните множество данни от записи и може да спести много ръчни усилия за сравняване на стойностите на данните за XML елемент спрямо стойностите на данните в колоната на DB.
Намерете снимката по-долу за справка:
Забележка: В горното изображение можете да видите, че имената на колоните не съвпадат, както обсъждахме по-рано.
Бакшиш: Понякога може да се сблъскате с проблем, докато сравнявате XML с голям размер спрямо DB. В този случай единственото нещо, което трябва да управлявате, е да подредите стойностите на колоните в Excel листа. Запомнете едно нещо: Excel сравнение на файлове трябва да бъде ограничен до 100MB размер на файла . Ще срещнете проблеми с производителността, ако надхвърлите.
Както обсъждахме по-рано, стойностите на XML елемента могат да бъдат входни данни за DB таблици или обратно. Така че, след като получите XML съобщението като входящ файл към приложение от приложение на DB, трябва да извършите горната техника за тестване, за да сравните стойностите на данните на XML срещу DB. Понякога трябва да извършим тестване на E2E, където множество приложения обработват данните.
Пример от реалния живот:
Потребител е поръчал книга от Flipkart, сайт за електронна търговия. Начална точка е потребителят, който поръчва артикул, а крайната точка е при получаване на копие на фактура в центъра за електронна търговия. След това могат да възникнат някои сценарии като връщане на поръчка или размяна на поръчка, връщане на плащане и така нататък.
Тук са включени множество модули като продажби, инвентаризация, обработка на артикули, логистика, плащане, връщане, оферти и т.н. Потокът E2E комуникира съобщения за изпълнение на поръчката.
Като изпитател, когато ще участвате в тестването на E2E, може да се наложи да попаднете на сценариите, при които ще проверявате Application vs DB или DB към DB или Application to Application данни. Тук трябва да имате пълна яснота за потока от данни E2E, т.е. какви трябва да са данните, получени от приложението или изпратени от приложението и какви са данните, които се съхраняват в DB или се извличат от DB.
Сценарии за отказ:
Нека обсъдим някои възможни сценарии за неуспех.
- Един прост сценарий на неуспех е неправилно картографиране . Съпоставянето между XML елементи спрямо DB колони трябва да се анализира по време на фазата на анализ или планиране от тестер. Обсъдете всички проблеми с картографирането с BA / SA, за да изясните съмненията. След като картографирането бъде замразено, можете да се уверите, че стойностите на XML елементите спрямо DB колоните ще съвпадат.
- Сравнете стойностите и ако не съвпада, регистрирайте дефект, за да разрешите проблема. Има редица възможности за повдигнат дефект, като Дефект на данни - може да е издаване на тестови данни ; Дефект на кода - може да е грешката в кода, която анализира стойностите на данните, за да не се картографира; Дефект на артефакт - Възможно е неправилно картографиране, предоставено от BA / SA.
- Проблем с XML формат - XML заглавка или метаданни или някои неправилни xml тагове. В този случай самият XML не успя да съхрани стойностите на данните в таблицата на базата данни.
- Несъответствие на типа данни - Стойността на елемента в XML има повече char по дължина, което е повече, отколкото DB колоната може да приеме. Това ще бъде проблем с код и екипът на разработчиците трябва да направи необходимите промени в дължината на типа данни за тази колона.
- Неизправност на околната среда - Намаляване на околната среда или приложение на DB, потокът от данни остава непълен.
- Проблем с производителността - Възможно е количеството записи, състоящи се от съобщението, да е огромно или натоварването на DB може да е голямо, за да започнете със записване е твърде голямо.
- Неизправност на Middleware ще доведе до намаляване на потока от данни от приложение към база данни.
- Проблем с достъпа до база данни поради което входящото приложение не може да изпрати данните до съответната таблица.
Заключение:
Тестването на XML към база данни ще бъде по-сложно, когато едно XML съобщение ще съхранява данни в множество системи. Също така представянето на база данни за съхранение / извличане на голям обем данни ще бъде предизвикателство за тестера, който да тества такива сценарии.
Горният пример е малък сегмент от тестови дейности, които се извършват в приложение. Изпитателят може да се наложи да извърши голямо количество тестване на данни с подобен подход.
Моля, уведомете ни за вашите коментари, въпроси и опит по-долу.
Препоръчително четене
- Тестване на база данни с JMeter
- Най-добри инструменти за тестване на софтуер 2021 г. (Инструменти за автоматизация на QA теста)
- Отличен начин за тестване на данни с помощта на XML технологии (Бяла книга)
- 40+ Най-добри инструменти за тестване на бази данни - Популярни решения за тестване на данни
- Какво е тестване на мутация: Урок с примери
- Изтегляне на eBook за тестване на Primer
- Топ 10 инструменти за тестване на ETL през 2021 г.
- Пълно ръководство за тестване на база данни (Защо, какво и как да тестваме данни)