Co to jest testowanie regeneracji? z Przykładem

Testowanie odzyskiwania

Testowanie odzyskiwania jest techniką testowania oprogramowania, która weryfikuje zdolność oprogramowania do odzyskiwania po awariach, takich jak awarie oprogramowania/sprzętu, awarie sieci itp. Celem testowania odzyskiwania jest określenie, czy operacje oprogramowania mogą być kontynuowane po katastrofie lub utracie integralności. Testowanie odzyskiwania obejmuje przywrócenie oprogramowania do punktu, w którym integralność była znana i ponowne przetworzenie transakcji do punktu awarii.

Przykład testowania odzyskiwania

Gdy aplikacja odbiera dane z sieci, odłącz kabel połączeniowy.

Testowanie odzyskiwania

  • Po pewnym czasie podłącz kabel ponownie i przeanalizuj zdolność aplikacji do kontynuowania odbierania danych od momentu, w którym połączenie sieciowe zostało zerwane.
  • Uruchom ponownie system, gdy przeglądarka ma otwartą określoną liczbę sesji i sprawdź, czy przeglądarka jest w stanie odzyskać je wszystkie, czy nie

W inżynierii oprogramowania testowanie odtwarzalności jest rodzajem nie- Testy funkcjonalne. (Testy niefunkcjonalne odnoszą się do aspektów oprogramowania, które mogą nie być powiązane z konkretną funkcją lub działaniem użytkownika, takimi jak skalowalność lub bezpieczeństwo).

Czas potrzebny na regenerację zależy od:

  • Liczba punktów ponownego uruchomienia
  • Ilość aplikacji
  • Szkolenia i umiejętności osób prowadzących działalność rekonwalescencji oraz dostępne narzędzia rekonwalescencji.

Jeśli występuje wiele awarii, zamiast zajmować się wszystkimi awariami, testowanie odtwarzania powinno zostać przeprowadzone w sposób ustrukturyzowany, co oznacza, że ​​testowanie odtwarzania powinno zostać przeprowadzone dla jednego segmentu, a następnie dla drugiego.

Wykonują to profesjonalni testerzy. Przed testowaniem odzyskiwania odpowiednie dane zapasowe są przechowywane w bezpiecznych lokalizacjach. Robi się to w celu zapewnienia, że ​​operacja może być kontynuowana nawet po katastrofie.

Cykl życia procesu odzyskiwania

Cykl życia procesu odzyskiwania można podzielić na pięć następujących etapów:

  1. Normalna operacja
  2. Wystąpienie katastrofy
  3. Zakłócenie i awaria operacji
  4. Usuwanie awarii poprzez proces odzyskiwania
  5. Przebudowa wszystkich procesów i informacji w celu przywrócenia normalnego działania całego systemu

Proces odzyskiwania

Omówmy szczegółowo te 5 kroków:

  1. System składający się ze sprzętu, oprogramowania i oprogramowania sprzętowego zintegrowanego w celu osiągnięcia wspólnego celu jest uruchamiany w celu realizacji dobrze zdefiniowanego i określonego celu. System jest wzywany do wykonywania normalnej operacji w celu wykonania zaprojektowanej pracy bez żadnych zakłóceń w określonym czasie.
  2. Zakłócenia mogą wystąpić z powodu nieprawidłowego działania oprogramowania, z różnych powodów, takich jak nieprawidłowe działanie wywołane sygnałem wejściowym, awaria oprogramowania z powodu awarii sprzętu, uszkodzenie w wyniku pożaru, kradzieży lub strajku.
  3. Faza zakłóceń jest najbardziej bolesną fazą, która prowadzi do strat biznesowych, zerwania relacji, utraty możliwości, strat roboczogodzin i niezmiennie strat finansowych i strat dobrej woli. Każda rozsądna agencja powinna mieć plan odzyskiwania po katastrofie, aby faza zakłóceń była minimalna.
  4. Jeśli plan tworzenia kopii zapasowych i procesy ograniczania ryzyka zostaną przygotowane we właściwym miejscu przed wystąpieniem katastrofy i zakłóceń, odzyskiwanie danych będzie możliwe bez dużej straty czasu, wysiłku i energii. Należy wyznaczyć wyznaczoną osobę wraz z zespołem z przypisaną rolą każdej z tych osób, aby ustalić odpowiedzialność i pomóc organizacji uchronić się przed długim okresem zakłóceń.
  5. Rekonstrukcja może obejmować wiele sesji operacji w celu odbudowania wszystkich folderów wraz z plikami konfiguracyjnymi. Powinna istnieć odpowiednia dokumentacja i proces rekonstrukcji w celu prawidłowego odzyskiwania.

Strategia renowacji

Zespół ds. odzyskiwania danych powinien mieć własną, unikalną strategię odzyskiwania ważnego kodu i danych, aby przywrócić normalne funkcjonowanie agencji.

Strategia może być unikalna dla każdej organizacji ze względu na krytyczność systemów, którymi się zajmuje.

Możliwą strategię dla systemów krytycznych można zwizualizować w następujący sposób:

  1. Aby mieć jedną kopię zapasową lub więcej niż jedną
  2. Aby mieć wiele kopii zapasowych w jednym miejscu lub w różnych miejscach
  3. Aby mieć kopię zapasową online lub kopię zapasową offline
  4. Czy kopia zapasowa może zostać wykonana automatycznie w oparciu o politykę, czy też można ją wykonać ręcznie?
  5. Do pracy można wykorzystać niezależny zespół ds. renowacji lub sam zespół programistów

Z każdą z tych strategii wiąże się koszt, a wiele zasobów wymaganych do tworzenia wielu kopii zapasowych może pochłaniać więcej zasobów fizycznych lub może wymagać niezależnego zespołu.

Problem może dotyczyć wielu firm ze względu na zależność ich danych i kodu od danej agencji programistycznej. Na przykład, jeśli Amazon AWS przestaje działać, wyłącza 25 łączy internetowych. W takich przypadkach niezależna renowacja ma kluczowe znaczenie.

Jak przeprowadzić test odzyskiwania

Podczas przeprowadzania testów odzyskiwania należy wziąć pod uwagę następujące kwestie.

  • Musimy stworzyć stanowisko testowe możliwie najbliższe rzeczywistym warunkom wdrożenia. Zmiany w interfejsie, protokole, oprogramowaniu sprzętowym, sprzęcie i oprogramowaniu powinny być jak najbardziej zbliżone do stanu rzeczywistego, jeśli nie takie same.
  • Ponieważ wyczerpujące testowanie może być czasochłonne i kosztowne, należy przeprowadzić identyczną konfigurację i przeprowadzić pełną kontrolę.
  • Jeśli to możliwe, należy przeprowadzić testy na sprzęcie, który ostatecznie zamierzamy przywrócić. Jest to szczególnie prawdziwe, jeśli przywracamy na inną maszynę niż ta, na której utworzono kopię zapasową.
  • Niektóre systemy tworzenia kopii zapasowych wymagają, aby dysk twardy miał dokładnie taki sam rozmiar jak dysk, z którego została pobrana kopia zapasowa.
  • Należy zarządzać starzeniem się dysków, ponieważ technologia dysków rozwija się w szybkim tempie, a stary dysk może nie być kompatybilny z nowym. Jednym ze sposobów rozwiązania problemu jest przywrócenie do pliku Maszyna wirtualna. Dostawcy oprogramowania do wirtualizacji, tacy jak VMware Inc., mogą konfigurować maszyny wirtualne tak, aby naśladowały istniejący sprzęt, w tym rozmiary dysków i inne konfiguracje.
  • Systemy tworzenia kopii zapasowych online nie są wyjątkiem w testowaniu. Większość dostawców usług tworzenia kopii zapasowych online chroni nas przed bezpośrednim narażeniem na problemy z nośnikami, korzystając z odpornych na awarie systemów pamięci masowej.
  • Chociaż systemy kopii zapasowych online są wyjątkowo niezawodne, musimy przetestować stronę przywracania systemu, aby upewnić się, że nie ma problemów z funkcjonalnością odzyskiwania, bezpieczeństwem lub szyfrowaniem.

Procedura testowa po renowacji

Większość dużych korporacji posiada niezależnych audytorów, którzy okresowo przeprowadzają testy odzysku.

Koszt utrzymania i testowania kompleksowego planu odzyskiwania po awarii może być znaczny i może być wygórowany dla mniejszych firm.

Mniejsze ryzyko może polegać na kopiach zapasowych danych i planach przechowywania poza siedzibą firmy, aby uratować je w przypadku katastrofy.

Po przywróceniu folderów i plików można wykonać następujące kontrole, aby mieć pewność, że pliki zostały odzyskane prawidłowo:

  • Zmień nazwę uszkodzonego folderu dokumentów
  • Policz pliki w przywróconych folderach i dopasuj je do istniejącego folderu.
  • Otwórz kilka plików i upewnij się, że są dostępne. Pamiętaj, aby otworzyć je w aplikacji, która zwykle z nich korzysta. I upewnij się, że możesz przeglądać dane, aktualizować je lub robić cokolwiek innego, co zwykle robisz.
  • Najlepiej jest otworzyć kilka plików różnych typów, zdjęcia, mp3, dokumenty i niektóre duże i małe.
  • Większość system operacyjny posiadają narzędzia, których można używać do porównywania plików i katalogów.

Podsumowanie

W tym samouczku poznaliśmy różne aspekty testowania odtwarzania, które pomagają zrozumieć, czy system lub program spełnia swoje wymagania po awarii.