simple approach xml database testing
Acest articol vă va ajuta să înțelegeți XML pentru Concept de testare a bazei de date , ceea ce este o provocare tip de testare .
Compararea datelor este o sarcină critică de realizat cu calitate. Orice defect va avea ca rezultat unul sau mai multe eșecuri într-o aplicație.
XML este un format de mesaj de comunicare electronică care conține date, iar baza de date este o stocare fizică cu tabele / coloane care conțin date.
Majoritatea aplicațiilor fac schimb de date între ele. Aceste comunicări pot fi sub formă de mesaje XML care conțin date. De asemenea, aceste date sunt stocate într-un sistem de baze de date și, atunci când este necesar, datele sunt preluate de aplicații.
Citește și => Un mod excelent de testare a datelor folosind tehnologiile XML
Majoritatea domeniilor, cum ar fi finanțele, marketingul, vânzările, comerțul electronic, automobile, logistica și producția utilizează această tehnică pentru comunicarea datelor cu aplicațiile.
Pentru ca testarea XML la baza de date să aibă succes, cea mai importantă intrare este document de cartografiere care definește fiecare element din XML față de coloanele din baza de date.
Documentul de mapare va oferi o reprezentare completă a elementelor (XML) la asocierea coloanelor (DB). Valorile elementelor XML pot fi o intrare în tabelele DB sau invers.
.net întrebare și răspunsuri la interviu
Cu acest articol, veți avea o bună înțelegere a modului de testare a datelor mesajelor XML în datele bazei de date pentru precizia datelor.
Ce veți învăța:
- Să vorbim despre XML și baza de date:
- Arhitectura aplicației:
- Exemplu:
- Cum se testează:
- Exemplu de viață reală:
- Scenarii de eșec:
- Concluzie:
- Lectură recomandată
Să vorbim despre XML și baza de date:
Aplicațiile folosesc diferite tehnici pentru a comunica între ele. Comunicarea prin mesaje folosind XML este una dintre ele. XML este o tehnică fiabilă de comunicare a mesajelor (date) între două aplicații. XML conține un set de elemente care au valori specifice. Uneori valorile pot fi NULL sau necompletate.
Baza de date stochează date sub formă de tabele. O bază de date conține mai multe tabele. O aplicație poate introduce date în tabelul dintr-o bază de date și, de asemenea, datele din tabel pot fi preluate de aplicații atunci când este necesar.
Acum aplicațiile pot stoca / prelua date din tabelele bazei de date sub formă de XML și este o tehnică destul de fiabilă / flexibilă.
Arhitectura aplicației:
Ca tester, este important să:
- Parcurgeți Arhitectura produsului pentru a înțelege modul în care aplicațiile comunică mesaje între module / baze de date / Odată ce ați parcurs aceste informații și ați descoperit că există neconcordanțe / întrebări, BA / SA poate fi contactat pentru clarificări.
- Înțelegeți fluxurile de date ale aplicațiilor din amonte și din aval.
- Fluxul de date de intrare și de ieșire către o aplicație.
În unele cazuri, aplicațiile din amonte și din aval pot fi baze de date ale diferitelor aplicații și comunică / transmit date în format XML utilizând proceduri stocate, servicii web, API-uri etc. În altele poate exista o combinație de baze de date și aplicații care comunică date. unul cu altul.
Exemplu:
Pentru acest articol de testare XML către bază de date, să luăm în considerare o aplicație care comunică cu o bază de date pentru a stoca date.
Avem o aplicație în aval IBAPX , care transmite mesaje în format XML către o aplicație de bază de date MYDBX . Avem o aplicație în amonte OBAPX , care preia date de la MYDBX pentru o cerere de raportare RPTX și este o aplicație în amonte pentru OBAPX .
Notă: Înainte de a începe, cunoașteți tehnologia utilizată pentru comunicarea middleware (Stored Procedure, Webservice, API, etc.) și cunoașteți clar arhitectura. Aceste informații sunt, de obicei, în documentul de proiectare sau cu echipele SA / BA / Dev.
Acum aplicația IBAPX stochează date în baza de date MYDBX. Pentru a cunoaște ce element al xml este mapat la coloana tabelului, trebuie să ne referim document de cartografiere . Uneori, elementele XML și numele coloanelor pot fi aceleași sau nu. Diferența se datorează unei nevoi de afaceri.
De exemplu . să presupunem că IBAPX trimite element cu numele ca. număr de vânzări , dar când MYDBX stochează aceeași valoare a elementului într-un tabel, se referă la acesta ca p_orderid numele coloanei. Acest lucru se poate datora faptului că elementul XML este denumit entitate legată de vânzări, atunci când aceeași valoare este stocată în tabel, numele coloanei ar fi putut fi modificat pentru a se referi la utilizarea producției. Acest lucru se poate schimba în alte aplicații în funcție de nevoile afacerii.
Cum se testează:
Acum, cum poate un tester să testeze toate scenariile în mod eficient și eficient? Sa discutam.
În primul rând, luați fișierul XML de intrare și validați structura XML adică elemente. Acest lucru se poate face cu ajutorul XSD care definește structura pentru XML-ul respectiv.
Fișierul XSD arată ca XML și definește structura XML, cum ar fi numele elementului, tipul elementului, minOccurs, maxOccurs, etc. Odată ce validarea XML este finalizată, exportați-o în Excel. Doar glisați fișierul xml într-o nouă foaie Excel. Vă va oferi o fereastră popup care vă întreabă cum doriți să deschideți fișierul, selectați doar „Ca tabel XML”. Datele vor fi salvate în fișierul Excel ca tabel.
Puteți vedea datele populate în tabel, puteți interoga tabelul cu datele specifice și puteți prelua înregistrarea. Copiați datele în același fișier Excel într-o altă foaie. Acum, folosind funcția EXACT în Excel, puteți compara cu ușurință datele XML și datele DB. Asigurați-vă că veți compara numai datele, nu numele coloanelor.
În acest fel puteți compara mai multe date de înregistrare și poate economisi mult efort manual pentru compararea valorilor de date ale elementelor XML față de valorile datelor din coloana DB.
Găsiți clipul de mai jos pentru referință:
Notă: În imaginea de mai sus puteți vedea numele coloanelor care nu se potriveau așa cum am discutat anterior.
Bacsis: Uneori este posibil să vă confruntați cu o problemă în timp ce comparați XML de dimensiuni mari cu DB. În acest caz, singurul lucru pe care trebuie să-l gestionați este aranjarea valorilor coloanei în foaia Excel. Amintiți-vă un lucru: Compararea fișierelor Excel ar trebui să fie limitat la dimensiunea fișierului de 100 MB . Veți întâmpina probleme de performanță dacă mergeți dincolo.
După cum am discutat anterior, valorile elementelor XML pot fi o intrare în tabelele DB sau invers. Deci, odată ce veți primi mesajul XML ca fișier de intrare într-o aplicație dintr-o aplicație DB, trebuie să efectuați tehnica de testare de mai sus pentru a compara valorile de date XML vs DB. Uneori trebuie să efectuăm testarea E2E în care mai multe aplicații procesează datele.
Exemplu de viață reală:
Un utilizator a comandat o carte de la Flipkart, un site de comerț electronic. Punctul de plecare este utilizatorul care comandă un articol, iar punctul final este să primească copia facturii la centrul de comerț electronic. Ulterior, ar putea apărea unele scenarii, cum ar fi returnarea comenzii sau schimbul de ordine, returnarea plății și așa mai departe.
Aici sunt implicate mai multe module precum vânzări, inventar, procesare articol, logistică, plată, returnări, oferte etc. pentru a procesa o comandă până când articolul ajunge la client. Fluxul E2E comunică mesaje pentru a îndeplini comanda.
În calitate de tester atunci când vă veți angaja în testarea E2E, poate fi necesar să întâlniți scenariile în care veți valida aplicația vs DB sau DB to DB sau Application to Application. Aici ar trebui să aveți o claritate completă asupra fluxului de date E2E, adică care ar trebui să fie datele primite de o aplicație sau trimise de aplicație și care sunt datele stocate în DB sau preluate de la DB.
Scenarii de eșec:
Să discutăm despre câteva scenarii posibile de eșec.
- Un scenariu simplu de eșec este mapare incorectă . Cartarea dintre elementele XML vs coloanele DB ar trebui analizată în timpul fazei de analiză sau planificare de către un tester. Discutați toate problemele legate de cartografiere cu BA / SA pentru a clarifica îndoielile. Odată ce maparea este înghețată, vă puteți asigura că valorile coloanelor elementelor XML și DB se vor potrivi.
- Comparați valorile și, dacă nu se potrivește, înregistrați un defect pentru a rezolva problema. Există mai multe posibilități pentru defectul ridicat, cum ar fi Defectul datelor - Poate fi problema datelor de testare ; Defect de cod - Poate fi eroarea din cod care analizează valorile datelor pentru a nu le mapa; Defect de artefact - Poate fi o mapare incorectă furnizată de BA / SA.
- Problemă de format XML - Antet sau metadate XML sau unele etichete XML incorecte. În acest caz, XML-ul în sine nu a reușit să stocheze valorile datelor în tabelul bazei de date.
- Nepotrivire tip de date - Valoarea elementului din XML are o lungime mai mare de caractere, care este mai mult decât poate accepta coloana DB. Aceasta va fi o problemă de cod, iar echipa de dezvoltatori trebuie să facă modificările necesare în lungimea tipului de date pentru acea coloană.
- Defecțiune a mediului - Mediu în jos sau aplicație DB în jos, fluxul de date rămâne incomplet.
- Problemă de performanță - Poate fi cantitatea de înregistrări care constă în mesajul este uriaș sau încărcarea pe DB ar putea fi mare pentru a începe cu înregistrarea constă este prea mare.
- Defecțiune middleware va provoca retragerea fluxului de date de la aplicație la baza de date.
- Problemă de acces la baza de date din cauza căreia aplicația de intrare nu poate trimite datele către tabelul respectiv.
Concluzie:
Testarea XML către baza de date va fi mai complexă atunci când un singur mesaj XML va stoca date în mai multe sisteme. De asemenea, performanța bazei de date pentru stocarea / recuperarea unui volum mare de date va fi o provocare pentru tester pentru a testa astfel de scenarii.
Exemplul de mai sus este un segment mic de activități de testare care se desfășoară într-o aplicație. Un tester poate fi necesar să facă o cantitate mare de testare a datelor cu o abordare similară.
Vă rugăm să ne anunțați comentariile, întrebările și experiența de mai jos.
Lectură recomandată
- Testarea bazei de date cu JMeter
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Un mod excelent de testare a datelor folosind tehnologiile XML (Cartea albă)
- 40+ Cele mai bune instrumente de testare a bazei de date - Soluții populare de testare a datelor
- Ce este testarea mutației: Tutorial cu exemple
- Descărcare eBook Descărcare Primer
- Top 10 instrumente de testare ETL în 2021
- Ghid complet de testare a bazei de date (de ce, ce și cum se testează datele)