Тестване за възстановяване
Тестът за възстановяване е техника за тестване на софтуер, която проверява способността на софтуера да се възстановява от откази като сривове на софтуер / хардуер, откази в мрежата и т.н. Целта на теста за възстановяване е да се определи дали софтуерните операции могат да продължат след бедствие или загуба на целостта. Тестването за възстановяване включва връщане на софтуера обратно до точката, където целостта е била известна и преработване на транзакциите до точката на отказ.
Пример за тестване на възстановяване
Когато дадено приложение получава данни от мрежата, изключете свързващия кабел.
- След известно време включете отново кабела и анализирайте способността на приложението да продължи да получава данни от точката, в която мрежовата връзка е била прекъсната.
- Рестартирайте системата, докато браузърът има определен брой отворени сесии и проверете дали браузърът е в състояние да възстанови всички тях или не
В софтуерното инженерство тестването за възстановяване е вид нефункционално тестване. (Нефункционалното тестване се отнася до аспекти на софтуера, които може да не са свързани с определена функция или действие на потребителя като мащабируемост или сигурност.)
Времето, необходимо за възстановяване, зависи от:
- Броят на точките за рестартиране
- Обем на приложенията
- Обучение и умения на хора, провеждащи възстановителни дейности и инструменти за възстановяване.
Когато има редица откази, вместо да се грижи за всички откази, тестването за възстановяване трябва да се извършва по структуриран начин, което означава, че трябва да се извърши тестване за възстановяване за един сегмент, а след това за друг.
Извършва се от професионални тестери. Преди тестване за възстановяване, адекватни архивни данни се съхраняват на сигурни места. Това се прави, за да се гарантира, че операцията може да продължи дори след бедствие.
Жизнен цикъл на процеса на възстановяване
Жизненият цикъл на процеса на възстановяване може да бъде класифициран в следните пет стъпки:
- Нормална операция
- Катастрофа
- Прекъсване и неуспех на операцията
- Премахване на бедствия чрез процеса на възстановяване
- Реконструкция на всички процеси и информация за привеждане на цялата система в нормална работа
Нека обсъдим тези 5 стъпки в детайли-
-
Система, състояща се от хардуер, софтуер и фърмуер, интегрирани за постигане на обща цел, е приведена в експлоатация за постигане на точно определена и декларирана цел. Системата е призвана да изпълнява нормалната операция за изпълнение на проектираната работа без никакви смущения в рамките на определен период от време.
-
Прекъсване може да възникне поради неизправност на софтуера поради различни причини като неизправност, инициирана от входа, срив на софтуера поради повреда на хардуера, повреден поради пожар, кражба и стачка.
-
Фазата на прекъсване е най-болезнената фаза, която води до бизнес загуби, прекъсване на връзката, загуби на възможности, човекочасови загуби и неизменно финансови загуби и загуби на добра воля. Всяка разумна агенция трябва да има план за възстановяване при бедствия, за да позволи фазата на прекъсване да бъде минимална.
-
Ако резервният план и процесите за намаляване на риска са на правилното място, преди да се сблъскате с бедствия и смущения, тогава възстановяването може да се извърши без много загуба на време, усилия и енергия. Определено лице, заедно с неговия екип с възложената роля на всяко от тези лица, трябва да бъдат определени, за да определят отговорността и да помогнат на организацията да се спаси от дълъг период на прекъсване.
-
Реконструкцията може да включва множество сесии на операцията за възстановяване на всички папки заедно с конфигурационните файлове. Трябва да има подходяща документация и процес на реконструкция за правилно възстановяване.
Стратегия за възстановяване
Екипът за възстановяване трябва да има своята уникална стратегия за извличане на важния код и данни, за да върне работата на агенцията в нормално състояние.
Стратегията може да бъде уникална за всяка организация въз основа на критичността на системите, с които се бори.
Възможната стратегия за критични системи може да бъде визуализирана, както следва:
- Да имате един или повече резервни копия
- Да имате множество резервни копия на едно място или на различни места
- За да имате онлайн архивиране или офлайн архивиране
- Може ли архивирането да се извършва автоматично въз основа на политика или ръчно?
- За да има независим реставрационен екип или самият екип за разработка, може да се използва за работата
Всяка от тези стратегии има свързан фактор на разходите и множество ресурси, необходими за множество резервни копия, може да консумират повече физически ресурси или може да се нуждаят от независим екип.
Много компании могат да бъдат засегнати поради тяхната зависимост от данни и код от съответната агенция за разработчици. Например, ако Amazon AWS спре да изключва 25 от интернет. Независимото възстановяване е от решаващо значение в такива случаи.
Как да направите тестване за възстановяване
Докато извършвате тестове за възстановяване, трябва да имате предвид следните неща.
- Трябва да създадем изпитвателен стенд възможно най-близо до реалните условия на разполагане. Промените във взаимодействието, протокола, фърмуера, хардуера и софтуера трябва да са възможно най-близки до действителното състояние, ако не и същото.
- Чрез изчерпателно тестване може да отнеме много време и трябва да се извърши скъпа работа, идентична конфигурация и пълна проверка.
- Ако е възможно, трябва да се извърши тестване на хардуера, който най-накрая ще възстановим. Това е особено вярно, ако възстановяваме на машина, различна от тази, която е създала архива.
- Някои системи за архивиране очакват твърдият диск да бъде с абсолютно същия размер като този, от който е взето резервното копие.
- Остаряването трябва да се управлява, тъй като технологията на задвижване напредва с бързи темпове и старото устройство може да не е съвместимо с новото. Един от начините за справяне с проблема е възстановяването на виртуална машина. Доставчиците на софтуер за виртуализация като VMware Inc. могат да конфигурират виртуални машини да имитират съществуващ хардуер, включително дискови размери и други конфигурации.
- Онлайн системите за архивиране не са изключение за тестване. Повечето доставчици на услуги за онлайн архивиране ни предпазват от пряко излагане на проблеми с медиите по начина, по който използват устойчиви на грешки системи за съхранение.
- Въпреки че системите за онлайн архивиране са изключително надеждни, трябва да тестваме страната за възстановяване на системата, за да се уверим, че няма проблеми с функционалността за извличане, защитата или криптирането.
Процедура за тестване след възстановяване
Повечето големи корпорации имат независими одитори, които периодично извършват упражнения за тестване на възстановяването.
Разходите за поддържане и тестване на цялостен план за възстановяване при бедствия могат да бъдат значителни и може да са непосилни за по-малкия бизнес.
По-малките рискове могат да разчитат на техните архиви на данни и планове за съхранение извън обекта, за да ги спасят в случай на катастрофа.
След възстановяване на папките и файловете могат да се направят следните проверки, за да се гарантира, че файловете се възстановяват правилно:
- Преименувайте повредената папка с документи
- Бройте файловете във възстановените папки и съвпадайте с тях със съществуваща папка.
- Отворете няколко от файловете и се уверете, че са достъпни. Не забравяйте да ги отворите с приложението, което обикновено ги използва. И се уверете, че можете да преглеждате данните, да актуализирате данните или каквото обикновено правите.
- Най-добре е да отворите няколко файла от различни типове, снимки, mp3, документи и някои големи, а други малки.
- Повечето операционни системи имат помощни програми, които можете да използвате за сравняване на файлове и директории.
Резюме:
В този урок научихме различен аспект на тестването за възстановяване, който помага да се разбере дали системата или програмата отговаря на изискванията си след отказ.
Тази статия е предоставена от Shweta Priyadarshini