an excellent way data testing using xml technologies
w SDLC Jeśli aplikacja korzysta z modelu kaskadowego, na koniec planowane są działania testowe. Stwarza to ryzyko przeróbek w odniesieniu do wymagań, projektu, kodu i przypadków testowych, jeśli zespół QA zidentyfikuje defekty. Lepiej nie czekać do końca, aby zidentyfikować wady aplikacji.
Testy, które nie są oparte na funkcjonalnym wykonaniu aplikacji, mogą znaleźć usterki bez wymuszania wydania wszystkich komponentów do środowiska testowego. Można to osiągnąć poprzez testowanie danych.
XML i powiązane technologie używane do komunikacji między różnymi warstwami aplikacji zapewniają możliwość przeprowadzenia testów, które nie muszą czekać, aż cała aplikacja będzie gotowa do testowania.
Ten dokument przedstawia jeden z możliwych sposobów spojrzenia na opcję testowania danych na wczesnym etapie cyklu życia wydania produktu.
Czego się nauczysz:
- Założenie:
- Grupa fokusowa:
- Cel, powód:
- Cykl życia zarządzania danymi testowymi
- Wniosek
- rekomendowane lektury
Założenie:
Ten dokument zakłada, że czytelnik jest zaznajomiony koncepcje testowania oprogramowania oraz podstawowe wykorzystanie bazy danych i technologii XML.
Grupa fokusowa:
Zespół kontroli jakości (QA), zespół danych (DT), programista (DEV)
Cel, powód:
Plik przykładowe dane produkt zidentyfikowany do testowania określa zakres przeprowadzonych testów, zwiększa zaufanie do wyników testów i jakości produktu. Identyfikacja danych do testu zależy od wymagań testu, który ma zostać wykonany.
Ten dokument koncentruje się na sprawdzaniu poprawności danych testowych przed wyświetleniem ich w interfejsie użytkownika.
Ten proces wymaga zarządzania danymi testowymi, aby uzyskać skuteczne wyniki testów. Dane, jak wszyscy wiemy, można zapisać w bazie danych lub w pliku płaskim. Ale transfer danych z / do bazy danych może odbywać się za pomocą XML. Istnieje bardzo ścisły związek między XML (1), XSD (2), XPATH (3) i XSLT (4). (Zobacz wszystkie definicje poniżej).
(1) XML - jest X rozciągliwy M arkup L ból. Opisywanie danych jest zaleceniem konsorcjum World Wide Web Consortium (W3C). Stosując zestaw prawidłowych reguł składniowych, można zapewnić, że dokument XML jest „dobrze sformułowany”
(dwa) XSD - Służy do oznaczenia struktury dokumentu XML. „Dobrze sformułowany” dokument XML można zweryfikować pod kątem XSD (schematu XML), aby go zweryfikować
(3) XPATH - Należy przejrzeć „prawidłowy” i „dobrze sformułowany” plik XML, aby pobrać odpowiednie dane z pliku XML. Wyrażenia XPATH wyglądają jak tradycyjna ścieżka pliku w katalogu.
(4) XSLT - jest X rozciągliwy S tylesheet L ból T ransformations - reprezentując dane z pliku XML w interfejsie użytkownika (UI), można zastosować dowolny styl (czcionka, kolor, rozmiar itp.) za pomocą XSLT. XSLT używa XPath do lokalizowania informacji z XML.
Dane przedstawione w XML jest sprawdzany pod kątem schematu (plik XSD). XML można wyprowadzać w różnych formatach za pomocą XSLT i XPATH.
jak dodać do tablicy
Na potrzeby tej dyskusji posłużymy się następującym przykładem.
Przykład - Wydawnictwo posiada stronę internetową, na której są wyświetlane informacje o wydanych przez siebie książkach. Jedna ze stron zawiera podsumowanie każdego rozdziału książki. Testowanie powinno zapewnić, że zawartość tej strony jest odpowiednia. Wydawnictwo do tej pory opublikowało miliony książek.
Wszelkie informacje związane z opublikowanymi książkami są zapisywane w bazie danych. Jednak omawiana strona internetowa wymaga podzbioru danych (o nowej książce i jej rozdziałach) do wyodrębnienia z bazy danych do pliku XML.
Podany poniżej kod XML przedstawia metadane dotyczące książki.
Plik XML Book.xml
A book on test data Jim 2015 Technical English 120 10 Acknowledgement Introduction What is data List of references
XML Schema Book.xsd
Cykl życia zarządzania danymi testowymi
Podobnie jak w przypadku innych procesów, zarządzanie danymi testowymi ma swoje własne etapy cyklu życia (LC).
merge sort c ++ kod źródłowy
- Określ wymagania dotyczące danych
- Zaplanuj zbieranie danych
- Zbuduj dane
- Przetestuj dane
- Zarządzanie danymi (nie jest szczegółowo opisane w tym dokumencie, ponieważ nie ma znaczenia)
# 1. Określ wymagania dotyczące danych
W powyższym przykładzie baza danych przechowuje miliony rekordów. Jeśli zawartość wszystkich książek jest wyodrębniona do pliku XML, wymaga to szczegółowej weryfikacji. Kiedy nowe informacje muszą zostać wyprowadzone na stronę internetową, XML i schemat mogą ulec zmianie.
Zmiany w XML, XSD, XPATH i XSLT wymagają odpowiedniej weryfikacji. Ale te testy nie muszą czekać na wydanie prezentacji, oprogramowania pośredniego i warstwy danych. Zespół kontroli jakości może przeanalizować XSD, aby przygotować plan wymagań dotyczących danych.
Etap cyklu życia | Kryteria wejścia | Działania / odpowiedzialność | Kryteria wyjścia |
---|---|---|---|
Określ wymagania dotyczące danych testowych | Dostępne są następujące dokumenty Projekt bazy danych, projekt interfejsu użytkownika, specyfikacja wymagań, architektura techniczna, diagram przepływu danych, diagramy przypadków użycia | Zrozum wymagania dotyczące danych odnoszące się do dokumentów z kryteriów wejścia (QA, DT, DEV) Wymagania dotyczące danych testowych (QA, DT, DEV) - Dokumentuje wszystkie potrzebne dane dla każdego ekranu, pokazując mapowanie między nazwami wyświetlanymi na ekranie i odpowiadającym im elementem XML | Przejrzyj dokument wymagań dotyczących danych testowych (QA, DEV, DT) |
Proces identyfikacji wszystkich wymagań dotyczących danych dla produktu powinien obejmować:
a) Zakres i kompletność - Czy określone wymagania obejmują wszystkie przypadki użycia?
Przykład - Bardzo ważne jest przetestowanie kombinacji danych dla tytułu, autora, kategorii, języka w powyższym przykładzie XML; ponieważ schemat narzuca te pola.
Można to łatwo obsłużyć, patrząc na schemat XML, który opisuje obecność elementu / atrybutu i ich kolejność w XML
b) Jakość - Czy gromadzone dane są możliwie najlepszej jakości? Wykorzystane dane testowe określają jakość testów wykonywanych na aplikacji.
- Pozytywne i negatywne scenariusze - Testowanie powinno sprawdzić, jak zachowuje się aplikacja z prawidłowymi / nieprawidłowymi danymi wejściowymi
Plik dokument wymagań dotyczących danych testowych zawiera listę potrzeb w zakresie danych na wszystkich poziomach aplikacji. Dane z bazy danych mogą być używane bezpośrednio w interfejsie użytkownika i / lub przetwarzane (obliczenia, konkatenacja itp.). W związku z tym wymagane jest uwzględnienie wszystkich potrzeb w zakresie danych.
Poniższa tabela przedstawia przykładową tabelę danych:
Nazwa pola | Typ danych | Dane testowe | Uwagi | Wynik testu |
---|---|---|---|---|
Autor | Strunowy | Puste pole | Ponieważ jest to pole obowiązkowe. Test powinien zakończyć się niepowodzeniem. | |
Autor | Strunowy | Autor + @ | Ma znaki specjalne | Ten test powinien zakończyć się niepowodzeniem |
Autor | Strunowy | Imię autora | Zawiera spację | Ten test powinien przejść |
Autor | Strunowy | 123Author | Rozpoczyna się liczbą | Ten test powinien zakończyć się niepowodzeniem |
Autor | Strunowy | @!Autor | Rozpoczyna się znakami specjalnymi | Ten test powinien zakończyć się niepowodzeniem |
Autor | Strunowy | Autor | Przedrostkiem spacje | Ten test powinien zakończyć się niepowodzeniem |
W powyższym przykładzie można uniknąć użycia typu danych w polu Autor. Zamiast tego można narzucić wzorzec.
Na przykład. tylko alfabety, zaczynaj od dużej litery, bez znaków specjalnych itp. A wzór (ograniczenie wartości elementu zdefiniowanej w XSD) można zdefiniować jako .
Jeśli jest to ustawione dla autor w powyższym przykładzie oznacza, że autor element powinien mieć wartość zawierającą tylko kombinację wielkich i małych liter oraz dodatnich liczb całkowitych.
# 2. Zaplanuj zbieranie danych
Etap LC | Kryteria wejścia | Działania / odpowiedzialność | Kryteria wyjścia |
---|---|---|---|
Zaplanuj zbieranie danych | Zatwierdzony dokument wymagań dotyczących danych testowych | Określ częstotliwość zapotrzebowania na dane (DEV, QA) Lista danych testowych (QA) Zdefiniuj schemat XML (DEV) | Przegląd częstotliwości zapotrzebowania na dane i danych testowych (DT) |
# 3. Zbuduj dane
Etap LC | Kryteria wejścia | Działania / odpowiedzialność | Kryteria wyjścia |
---|---|---|---|
Twórz dane | Plik żądania danych | Zbuduj dane w bazie danych (DT) Wyodrębnij dane z bazy danych do XML (DT) Sprawdź poprawność XML ze schematem (DT) Udostępnij plik XML firmie QA (DT) | Plik XML został odebrany przez zespół QA |
# 4. Przetestuj dane
Etap LC | Kryteria wejścia | Działania / odpowiedzialność | Kryteria wyjścia |
---|---|---|---|
Przetestuj dane | Plik XML żądania danych | Sprawdź poprawność XML ze schematem pod kątem kompletności i poprawności (QA) Zaktualizuj dokument mapowania o wyniki testów (QA) | Wyniki testów udostępnione zespołowi DEV, DT |
Jak podano w powyższych tabelach, kontrola jakości sprawdza poprawność XML w odniesieniu do schematu, aby sprawdzić, czy dane są dostępne zgodnie z oczekiwaniami. Po dopasowaniu schematu można potwierdzić, że zawartość i jej struktura są prawidłowe. Nie oznacza to jednak, że dane są dokładnie zbierane przez system.
Jak wiemy, XML przedstawia strukturę drzewa z p arent-child-sibling-ancestor-descendent relacja między węzłami.
Spójrz na poniższą tabelę, aby zrozumieć najprostsze konwencje XPATH:
W celu przedstawienia pól z XML na ekranie (np. Jako HTML) używana jest kombinacja XSLT - XPATH.
Latest Book
Title Author Publication_Year Category Language Pages
Ostatecznie w przeglądarce wynikowy XML jest reprezentowany jak poniżej. Ponieważ dane zostały już zweryfikowane, testowanie może być bardziej skupione na wyglądzie i dotyku ekranu.
Wniosek
- Testowanie danych przeprowadzane na wczesnym etapie cyklu życia testów deweloperskich pozwala zaoszczędzić pieniądze, ponieważ koszt naprawy błędu podczas wykonywania testu funkcjonalnego to znacznie więcej niż naprawa na wczesnym etapie cyklu życia
- Wysiłek poświęcony początkowo na walidację pliku XML, XPath i XSLT z dokumentami XSD pomaga uniknąć wielu iteracji wydania
- Zespół ds. Kontroli jakości może ściśle współpracować z zespołem programistów i świadczyć usługi o wartości dodanej
- Zespół ds. Kontroli jakości może pomóc w tworzeniu różnych kombinacji danych, aby zapewnić pokrycie i poprawność
Jestem pewien, że ta technika okaże się przydatna. Zapraszam do komentowania, jeśli masz jakieś pytania.
rekomendowane lektury
- Proste podejście do testów XML w bazach danych
- Najlepsze narzędzia do testowania oprogramowania 2021 (Narzędzia do automatyzacji testów QA)
- Kluczowe różnice między testami czarnoskrzynkowymi a białoskrzynkowymi
- 10 najpopularniejszych narzędzi hurtowni danych i technologii testowania
- Samouczek testowania hurtowni danych ETL (kompletny przewodnik)
- Testing Primer Pobierz eBook
- Co to jest testowanie mutacji: samouczek z przykładami
- Jak przeprowadzić testy oparte na danych za pomocą narzędzia TestComplete