Pruebas de recuperación
La prueba de recuperación es una técnica de prueba de software que verifica la capacidad del software para recuperarse de fallas como fallas de software / hardware, fallas de red, etc. El propósito de la prueba de recuperación es determinar si las operaciones del software pueden continuar después de un desastre o una pérdida de integridad. Las pruebas de recuperación implican revertir el software al punto donde se conocía la integridad y reprocesar transacciones hasta el punto de falla.
Ejemplo de prueba de recuperación
Cuando una aplicación recibe datos de la red, desenchufe el cable de conexión.
- Después de un tiempo, vuelva a conectar el cable y analice la capacidad de la aplicación para continuar recibiendo datos desde el punto en el que se interrumpió la conexión de red.
- Reinicie el sistema mientras un navegador tiene un número definido de sesiones abiertas y verifique si el navegador puede recuperarlas todas o no
En ingeniería de software, las pruebas de recuperabilidad son un tipo de prueba no funcional. (Las pruebas no funcionales se refieren a aspectos del software que pueden no estar relacionados con una función específica o una acción del usuario, como la escalabilidad o la seguridad).
El tiempo necesario para recuperarse depende de:
- El número de puntos de reinicio
- Un volumen de aplicaciones
- Capacitación y habilidades de las personas que realizan actividades de recuperación y herramientas disponibles para la recuperación.
Cuando hay una serie de fallas, en lugar de ocuparse de todas las fallas, las pruebas de recuperación deben realizarse de forma estructurada, lo que significa que las pruebas de recuperación deben realizarse para un segmento y luego para otro.
Lo hacen probadores profesionales. Antes de las pruebas de recuperación, los datos de respaldo adecuados se guardan en lugares seguros. Esto se hace para garantizar que la operación pueda continuar incluso después de un desastre.
Ciclo de vida del proceso de recuperación
El ciclo de vida del proceso de recuperación se puede clasificar en los siguientes cinco pasos:
- Operación normal
- Ocurrencia de desastres
- Interrupción y falla de la operación
- Eliminación de desastres a través del proceso de recuperación
- Reconstrucción de todos los procesos e información para que todo el sistema pase a su funcionamiento normal.
Analicemos estos 5 pasos en detalle:
-
Un sistema que consta de hardware, software y firmware integrados para lograr un objetivo común se vuelve operativo para llevar a cabo un objetivo bien definido y establecido. El sistema está llamado a realizar la operación normal para realizar el trabajo diseñado sin ninguna interrupción dentro de un período de tiempo estipulado.
-
Puede ocurrir una interrupción debido a un mal funcionamiento del software, debido a varias razones, como un mal funcionamiento iniciado por la entrada, fallas del software debido a una falla del hardware, daños debido a un incendio, robo y huelga.
-
La fase de interrupción es una fase muy dolorosa que conduce a pérdidas comerciales, ruptura de relaciones, pérdidas de oportunidades, pérdidas de horas de trabajo e invariablemente pérdidas financieras y de fondo de comercio. Toda agencia sensata debe tener un plan de recuperación ante desastres que permita que la fase de interrupción sea mínima.
-
Si un plan de respaldo y los procesos de mitigación de riesgos están en el lugar correcto antes de que se produzcan desastres e interrupciones, la recuperación se puede realizar sin mucha pérdida de tiempo, esfuerzo y energía. Se debe definir un individuo designado, junto con su equipo con el rol asignado de cada una de estas personas para fijar la responsabilidad y ayudar a la organización a salvar del largo período de interrupción.
-
La reconstrucción puede implicar varias sesiones de operación para reconstruir todas las carpetas junto con los archivos de configuración. Debe haber la documentación y el proceso de reconstrucción adecuados para una correcta recuperación.
Estrategia de restauración
El equipo de recuperación debe tener su estrategia única para recuperar el código y los datos importantes para que el funcionamiento de la agencia vuelva a la normalidad.
La estrategia puede ser única para cada organización en función de la criticidad de los sistemas que están manejando.
La posible estrategia para sistemas críticos se puede visualizar de la siguiente manera:
- Tener una sola copia de seguridad o más de una
- Tener múltiples copias de seguridad en un lugar o en diferentes lugares
- Para tener una copia de seguridad en línea o fuera de línea
- ¿Se puede realizar la copia de seguridad automáticamente según una política o tenerla manualmente?
- Tener un equipo de restauración independiente o un equipo de desarrollo en sí mismo se puede utilizar para el trabajo.
Cada una de estas estrategias tiene un factor de costo asociado y los múltiples recursos necesarios para múltiples copias de seguridad pueden consumir más recursos físicos o pueden necesitar un equipo independiente.
Muchas empresas pueden verse afectadas debido a la dependencia de sus datos y código de la agencia de desarrollo en cuestión. Por ejemplo, si Amazon AWS falla, cierra 25 de Internet. La Restauración Independiente es crucial en tales casos.
Cómo hacer pruebas de recuperación
Al realizar las pruebas de recuperación, se deben considerar las siguientes cosas.
- Debemos crear un banco de pruebas lo más cercano posible a las condiciones reales de despliegue. Los cambios en la interfaz, el protocolo, el firmware, el hardware y el software deben estar lo más cerca posible de la condición real, si no la misma condición.
- La realización de pruebas exhaustivas puede llevar mucho tiempo y es un asunto costoso, se debe realizar una configuración idéntica y una verificación completa.
- Si es posible, las pruebas deben realizarse en el hardware que finalmente vamos a restaurar. Esto es especialmente cierto si estamos restaurando en una máquina diferente a la que creó la copia de seguridad.
- Algunos sistemas de copia de seguridad esperan que el disco duro tenga exactamente el mismo tamaño que aquel del que se tomó la copia de seguridad.
- La obsolescencia debe gestionarse ya que la tecnología de las unidades avanza a un ritmo rápido y es posible que las unidades antiguas no sean compatibles con la nueva. Una forma de manejar el problema es restaurar a una máquina virtual. Los proveedores de software de virtualización como VMware Inc. pueden configurar máquinas virtuales para imitar el hardware existente, incluidos los tamaños de disco y otras configuraciones.
- Los sistemas de respaldo en línea no son una excepción para las pruebas. La mayoría de los proveedores de servicios de respaldo en línea nos protegen de estar expuestos directamente a problemas de medios por la forma en que usan sistemas de almacenamiento tolerantes a fallas.
- Si bien los sistemas de respaldo en línea son extremadamente confiables, debemos probar el lado de restauración del sistema para asegurarnos de que no haya problemas con la funcionalidad de recuperación, la seguridad o el cifrado.
Procedimiento de prueba después de la restauración
La mayoría de las grandes corporaciones tienen auditores independientes para realizar ejercicios de prueba de recuperación periódicamente.
El gasto de mantener y probar un plan integral de recuperación ante desastres puede ser considerable y puede resultar prohibitivo para las empresas más pequeñas.
Los riesgos más pequeños pueden depender de sus copias de seguridad de datos y planes de almacenamiento fuera del sitio para salvarlos en caso de una catástrofe.
Después de restaurar las carpetas y los archivos, se pueden realizar las siguientes comprobaciones para garantizar que los archivos se recuperen correctamente:
- Cambiar el nombre de la carpeta de documentos dañada
- Cuente los archivos en las carpetas restauradas y combínelos con una carpeta existente.
- Abra algunos de los archivos y asegúrese de que estén accesibles. Asegúrese de abrirlos con la aplicación que los usa normalmente. Y asegúrese de poder navegar por los datos, actualizar los datos o lo que sea que haga normalmente.
- Es mejor abrir varios archivos de diferentes tipos, imágenes, mp3, documentos y algunos grandes y otros pequeños.
- La mayoría de los sistemas operativos tienen utilidades que puede utilizar para comparar archivos y directorios.
Resumen:
En este tutorial, hemos aprendido varios aspectos de las pruebas de recuperación que ayudan a comprender si el sistema o programa cumple con sus requisitos después de una falla.
Este artículo es una contribución de Shweta Priyadarshini.