Testowanie baz danych - przegląd

Testowanie bazy danych obejmuje sprawdzanie poprawności danych, testowanie integralności danych, kontrolę wydajności związaną z bazą danych oraz testowanie procedur, wyzwalaczy i funkcji w bazie danych.

Przykład

Rozważ aplikację, która przechwytuje szczegóły codziennych transakcji dla użytkowników i przechowuje je w bazie danych. Z punktu widzenia testowania bazy danych należy przeprowadzić następujące kontrole -

  • Informacje transakcyjne z aplikacji powinny być przechowywane w bazie danych i powinny dostarczać użytkownikowi poprawnych informacji.

  • Informacje nie powinny zostać utracone podczas ładowania do bazy danych.

  • Należy przechowywać tylko zakończone transakcje, a wszystkie niekompletne operacje powinny zostać przerwane przez aplikację.

  • Należy zachować uprawnienia dostępu do bazy danych. Nie należy zapewniać niezatwierdzonego lub nieautoryzowanego dostępu do informacji o użytkowniku.

Dlaczego musisz przeprowadzać testy bazy danych?

Istnieje wiele powodów, dla których przeprowadza się testy bazy danych. Istnieje potrzeba przeprowadzania integralności danych, walidacji i sprawdzania spójności danych w bazie danych, ponieważ system zaplecza jest odpowiedzialny za przechowywanie danych i jest dostępny w wielu celach.

Poniżej podano kilka typowych powodów testowania bazy danych -

  • Aby uprościć złożoność wywołań do zaplecza bazy danych, programiści zwiększają użycie View i Stored Procedury.

  • Te Stored procedury i Viewszawierają krytyczne zadania, takie jak wprowadzanie danych klienta (imię i nazwisko, dane kontaktowe itp.) oraz danych sprzedaży. Zadania te należy przetestować na kilku poziomach.

  • Black-box testingwykonywane na froncie jest ważne, ale utrudnia wyodrębnienie problemu. Testowanie w systemie zaplecza zwiększa niezawodność danych. Dlatego testowanie bazy danych jest wykonywane w systemie zaplecza.

  • W bazie danych dane pochodzą z wielu aplikacji i istnieje możliwość, że w bazie danych są przechowywane szkodliwe lub nieprawidłowe dane. Dlatego istnieje potrzeba regularnego sprawdzania składników bazy danych. Ponadto należy regularnie sprawdzać integralność i spójność danych.

Testowanie bazy danych a testowanie front-end

Testowanie bazy danych różni się od testowania interfejsu użytkownika. Poniższa tabela przedstawia kluczowe różnice -

Testowanie baz danych Testowanie interfejsu użytkownika

Testowanie baz danych jest znane jako sprawdzanie poprawności danych i testowanie integralności lub testy wewnętrzne.

Testowanie interfejsu użytkownika lub testowanie front-end jest również nazywane testowaniem aplikacji lub testowaniem GUI.

Testowanie baz danych polega na testowaniu komponentów zaplecza, które nie są widoczne dla użytkowników.

Obejmuje to komponenty baz danych i systemy DBMS, takie jak My SQL, Oracle.

Testowanie UI polega na sprawdzeniu funkcjonalności aplikacji i jej komponentów, takich jak formularze, wykresy, menu, raporty itp.

Te komponenty są tworzone przy użyciu narzędzi programistycznych typu front-end, takich jak VB.net, C #, Delphi itp.

Testowanie bazy danych obejmuje sprawdzanie procedur składowanych, widoków, schematów w bazie danych, tabel, indeksów, kluczy, wyzwalaczy, sprawdzanie poprawności danych i sprawdzanie spójności danych.

Testowanie interfejsu użytkownika obejmuje sprawdzenie funkcjonalności aplikacji, przycisków, formularzy i pól, kalendarza i obrazów, nawigacji z jednej strony na drugą oraz ogólnej funkcjonalności aplikacji.

Aby przeprowadzić testowanie bazy danych, tester potrzebuje dogłębnej znajomości koncepcji bazy danych - takiej jak procedury i funkcje, widoki, indeksy, klucze i dobra praktyczna znajomość języka SQL.

Aby przeprowadzić testy interfejsu użytkownika, tester musi dobrze rozumieć wymagania biznesowe, wiedzę o funkcjonowaniu aplikacji, kodowanie itp.

Dane pochodzą z wielu heterogenicznych źródeł danych w aplikacjach internetowych, intranetowych i różnych innych aplikacjach.

Dane są wprowadzane ręcznie do aplikacji. Polega na funkcjonalnym testowaniu aplikacji front-end.