Testowanie baz danych - techniki
W tym rozdziale opisano najpopularniejsze techniki używane do testowania bazy danych.
Testowanie schematu bazy danych
Jak wspomniano wcześniej, obejmuje testowanie każdego obiektu w schemacie.
Weryfikacja baz danych i urządzeń
- Weryfikacja nazwy bazy danych
- Weryfikacja urządzenia danych, urządzenia rejestrującego i urządzenia zrzutowego
- Sprawdzanie, czy dla każdej bazy danych przydzielono wystarczającą ilość miejsca
- Weryfikacja ustawienia opcji bazy danych
Sprawdzanie reguł tabel, kolumn, typów kolumn
Sprawdź poniższe pozycje, aby poznać różnice między rzeczywistym a zastosowanym ustawieniem.
- Nazwy wszystkich tabel w bazie danych 
- Nazwy kolumn dla każdej tabeli 
- Typy kolumn dla każdej tabeli 
- NULL wartość sprawdzona czy nie 
- Określa, czy wartość domyślna jest powiązana z poprawnymi kolumnami tabeli 
- Definicje reguł poprawiające nazwy tabel i uprawnienia dostępu 
Klucz i indeksy
Sprawdź klucz i indeksy w każdej tabeli -
- Klucz podstawowy dla każdej tabeli 
- Klucze obce dla każdej tabeli 
- Typy danych między kolumną klucza obcego a kolumną w innej tabeli Indeksy, klastrowe lub nieklastrowe unikalne lub nieunikalne 
Testy procedur składowanych
Obejmuje sprawdzenie, czy procedura składowana jest zdefiniowana, a wyniki są porównywane. W teście procedury składowanej sprawdzane są następujące punkty -
- Nazwa procedury składowanej 
- Nazwy parametrów, typy parametrów itp. 
- Output- czy wynik zawiera wiele rekordów. Zero wierszy zostanie uwzględnionych lub wyodrębnionych zostanie tylko kilka rekordów. 
- Jaka jest funkcja procedury składowanej, a czego procedura składowana nie powinna robić? 
- Przekazywanie przykładowych zapytań wejściowych w celu sprawdzenia, czy procedura składowana wyodrębnia poprawne dane. 
- Stored Procedure Parameters- Wywołaj procedurę składowaną z danymi granicznymi i prawidłowymi danymi. Unieważ każdy parametr raz i uruchom procedurę. 
- Return values- Sprawdź wartości zwracane przez procedurę składowaną. W przypadku niepowodzenia należy zwrócić wartość niezerową. 
- Error messages check- Wprowadź zmiany w taki sposób, aby procedura składowana nie powiodła się i przynajmniej raz wygeneruj każdy komunikat o błędzie. Sprawdź scenariusze wyjątków, jeśli nie ma wstępnie zdefiniowanego komunikatu o błędzie. 
Testy wyzwalania
W teście wyzwalacza tester musi wykonać następujące zadania -
- Upewnij się, że nazwa wyzwalacza jest poprawna.
- Sprawdź poprawność wyzwalacza, jeśli został wygenerowany dla określonej kolumny tabeli.
- Weryfikacja aktualizacji wyzwalacza.
- Zaktualizuj rekord, podając prawidłowe dane.
- Zaktualizuj rekord z nieprawidłowymi danymi i zakryj każdy błąd wyzwalacza.
- Zaktualizuj rekord, gdy nadal odwołuje się do niego wiersz w innej tabeli.
- Zapewnij wycofywanie transakcji w przypadku awarii.
- Dowiedz się o przypadkach, w których wyzwalacz nie powinien cofać transakcji.
Skrypty konfiguracji serwera
Należy przeprowadzić dwa rodzaje testów -
- Konfigurowanie bazy danych od podstaw i
- Aby skonfigurować istniejącą bazę danych.
Testy integracji SQL Server
Testy integracyjne należy przeprowadzić po zakończeniu testów modułowych.
- Należy intensywnie wywoływać procedury składowane, aby wybierać, wstawiać, aktualizować i usuwać rekordy w różnych tabelach w celu znalezienia wszelkich konfliktów i niezgodności. 
- Wszelkie konflikty między schematem a wyzwalaczami. 
- Wszelkie konflikty między procedurami składowanymi a schematem. 
- Wszelkie konflikty między procedurami składowanymi i wyzwalaczami. 
Metoda testowania funkcjonalnego
Testowanie funkcjonalne można przeprowadzić, dzieląc bazę danych na moduły zgodnie z funkcjonalnością. Funkcje są dwojakiego rodzaju -
- Type 1- W testach typu 1 poznaj cechy projektu. Dla każdej głównej funkcji znajdź schemat, wyzwalacze i procedury składowane odpowiedzialne za implementację tej funkcji i umieść je w grupie funkcjonalnej. Następnie przetestujcie razem każdą grupę. 
- Type 2- W testach typu 2 granica grup funkcjonalnych w zapleczu nie jest oczywista. Możesz sprawdzić przepływ danych i zobaczyć, gdzie możesz je sprawdzić. Zacznij od front-endu. 
Następujący proces ma miejsce -
- Gdy usługa ma żądanie lub zapisuje dane, wywoływane są niektóre procedury składowane. 
- Procedury zaktualizują niektóre tabele. 
- Te procedury składowane będą miejscem do rozpoczęcia testowania, a te tabele będą miejscem do sprawdzenia wyników testów. 
Test naprężeń
Testowanie warunków skrajnych polega na uzyskaniu listy głównych funkcji bazy danych i odpowiednich procedur składowanych. Postępuj zgodnie z instrukcjami podanymi poniżej, aby wykonać testy warunków skrajnych -
- Napisz skrypty testowe, aby wypróbować te funkcje, a każda funkcja musi zostać sprawdzona przynajmniej raz w pełnym cyklu. 
- Wykonuj skrypty testowe wielokrotnie przez określony czas. 
- Weryfikacja plików dziennika w celu sprawdzenia wszelkich zakleszczeń, braku pamięci, uszkodzenia danych itp. 
Testy porównawcze
Jeśli w Twojej bazie danych nie ma żadnych problemów z danymi ani błędów, można sprawdzić wydajność systemu. Słabe działanie systemu można znaleźć w testach porównawczych, sprawdzając parametry podane poniżej -
- Wydajność na poziomie systemu
- Zidentyfikuj najczęściej używane funkcje / cechy
- Czas - maksymalny czas, minimalny czas i średni czas wykonywania funkcji
- Dostęp do głośności
Testowanie bazy danych za pośrednictwem interfejsu użytkownika
Błędy zaplecza można również czasami znaleźć, wykonując testy front-end. Możesz wykonać proste kroki podane poniżej, aby wykryć błędy za pomocą testów front-end.
- Pisz zapytania z front-endu i przeprowadzaj wyszukiwania. 
- Wybierz istniejący rekord, zmień wartości w niektórych polach i zapisz rekord. (Obejmuje instrukcję UPDATE lub aktualizację procedur składowanych i wyzwalaczy aktualizacji). 
- Wstaw nową pozycję menu w oknie frontonu. Wypełnij informacje i zapisz rekord. (Obejmuje instrukcje INSERT lub procedury składowane wstawiania i wyzwalacze usuwania). 
- Wybierz istniejący rekord, kliknij przycisk USUŃ lub USUŃ i potwierdź usunięcie. (Obejmuje instrukcję DELETE lub usuwanie procedur składowanych i wyzwalaczy usuwania). 
- Powtórz te przypadki testowe z nieprawidłowymi danymi i zobacz, jak odpowiada baza danych.