O que é teste de recuperação? com exemplo

Índice:

Anonim

Teste de Recuperação

O Teste de Recuperação é uma técnica de teste de software que verifica a capacidade do software de se recuperar de falhas como travamentos de software / hardware, falhas de rede, etc. O objetivo do Teste de Recuperação é determinar se as operações do software podem ser continuadas após um desastre ou perda de integridade. O teste de recuperação envolve a reversão do software ao ponto em que a integridade era conhecida e o reprocessamento das transações até o ponto de falha.

Exemplo de teste de recuperação

Quando um aplicativo está recebendo dados da rede, desconecte o cabo de conexão.

  • Depois de algum tempo, reconecte o cabo e analise a capacidade do aplicativo de continuar recebendo dados do ponto em que a conexão de rede foi interrompida.
  • Reinicie o sistema enquanto um navegador tem um número definido de sessões abertas e verifique se o navegador é capaz de recuperar todas elas ou não

Em Engenharia de Software, o Teste de Recuperabilidade é um tipo de Teste Não Funcional. (O teste não funcional refere-se a aspectos do software que podem não estar relacionados a uma função específica ou ação do usuário, como escalabilidade ou segurança.)

O tempo de recuperação depende de:

  • O número de pontos de reinicialização
  • Um volume de aplicativos
  • Treinamento e habilidades de pessoas que realizam atividades de recuperação e ferramentas disponíveis para recuperação.

Quando há uma série de falhas, em vez de cuidar de todas as falhas, o teste de recuperação deve ser feito de forma estruturada, o que significa que o teste de recuperação deve ser realizado para um segmento e depois para outro.

Isso é feito por testadores profissionais. Antes do teste de recuperação, os dados de backup adequados são mantidos em locais seguros. Isso é feito para garantir que a operação possa continuar mesmo após um desastre.

Ciclo de vida do processo de recuperação

O ciclo de vida do processo de recuperação pode ser classificado nas seguintes cinco etapas:

  1. Operação normal
  2. Ocorrência de desastre
  3. Interrupção e falha da operação
  4. Eliminação de desastres através do processo de recuperação
  5. Reconstrução de todos os processos e informações para colocar todo o sistema em operação normal

Vamos discutir essas 5 etapas em detalhes

  1. Um sistema que consiste em hardware, software e firmware integrado para atingir um objetivo comum torna-se operacional para realizar um objetivo bem definido e declarado. O sistema é chamado para realizar a operação normal para realizar o trabalho projetado sem qualquer interrupção dentro de um período de tempo estipulado.

  2. Uma interrupção pode ocorrer devido ao mau funcionamento do software, devido a vários motivos, como mau funcionamento iniciado pela entrada, falha do software devido a falha de hardware, danificado devido a incêndio, roubo e greve.

  3. A fase de interrupção é a fase mais dolorosa que leva a perdas de negócios, quebra de relacionamento, perdas de oportunidade, perdas de homem-hora e, invariavelmente, perdas financeiras e de fundo de comércio. Cada agência sensata deve ter um plano de recuperação de desastres para permitir que a fase de interrupção seja mínima.

  4. Se um plano de backup e processos de mitigação de risco estão no lugar certo antes de encontrar desastres e interrupções, a recuperação pode ser feita sem muita perda de tempo, esforço e energia. Um indivíduo designado, junto com sua equipe com a função atribuída a cada uma dessas pessoas, deve ser definido para fixar a responsabilidade e ajudar a organização a evitar um longo período de interrupção.

  5. A reconstrução pode envolver várias sessões de operação para reconstruir todas as pastas junto com os arquivos de configuração. Deve haver documentação adequada e processo de reconstrução para recuperação correta.

Estratégia de Restauração

A equipe de recuperação deve ter sua estratégia exclusiva para recuperar o código e os dados importantes para trazer a operação da agência de volta à normalidade.

A estratégia pode ser única para cada organização com base na criticidade dos sistemas com os quais está lidando.

A possível estratégia para sistemas críticos pode ser visualizada da seguinte forma:

  1. Para ter um único backup ou mais de um
  2. Para ter vários backups em um lugar ou em lugares diferentes
  3. Para ter um backup online ou offline
  4. O backup pode ser feito automaticamente com base em uma política ou manualmente?
  5. Ter uma equipe de restauração independente ou a própria equipe de desenvolvimento pode ser utilizada para o trabalho

Cada uma dessas estratégias tem um fator de custo associado a ela e vários recursos necessários para vários backups podem consumir mais recursos físicos ou podem precisar de uma equipe independente.

Muitas empresas podem ser afetadas devido à dependência de dados e código da agência de desenvolvimento em questão. Por exemplo, se o Amazon AWS desligar, fecha 25 da Internet. A restauração independente é crucial nesses casos.

Como fazer testes de recuperação

Ao realizar o teste de recuperação, as seguintes coisas devem ser consideradas.

  • Devemos criar uma base de teste o mais próximo possível das condições reais de implantação. As alterações na interface, protocolo, firmware, hardware e software devem ser o mais próximo possível da condição real, se não forem as mesmas.
  • Por meio de testes exaustivos, pode ser demorado e caro, uma configuração idêntica e uma verificação completa devem ser executadas.
  • Se possível, o teste deve ser realizado no hardware que finalmente iremos restaurar. Isso é especialmente verdadeiro se estivermos restaurando em uma máquina diferente daquela que criou o backup.
  • Alguns sistemas de backup esperam que o disco rígido tenha exatamente o mesmo tamanho daquele de onde o backup foi feito.
  • A obsolescência deve ser gerenciada, pois a tecnologia do drive está avançando em um ritmo acelerado e o drive antigo pode não ser compatível com o novo. Uma maneira de lidar com o problema é restaurar em uma máquina virtual. Os fornecedores de software de virtualização como VMware Inc. podem configurar máquinas virtuais para imitar o hardware existente, incluindo tamanhos de disco e outras configurações.
  • Os sistemas de backup online não são uma exceção para teste. A maioria dos provedores de serviços de backup online nos protege de sermos expostos diretamente a problemas de mídia pela maneira como usam sistemas de armazenamento tolerantes a falhas.
  • Embora os sistemas de backup online sejam extremamente confiáveis, devemos testar o lado de restauração do sistema para garantir que não haja problemas com a funcionalidade de recuperação, segurança ou criptografia.

Procedimento de teste após restauração

A maioria das grandes empresas tem auditores independentes para realizar exercícios de teste de recuperação periodicamente.

A despesa de manutenção e teste de um plano abrangente de recuperação de desastres pode ser substancial e proibitiva para empresas menores.

Riscos menores podem depender de seus backups de dados e planos de armazenamento externo para salvá-los no caso de uma catástrofe.

Depois que as pastas e os arquivos forem restaurados, as seguintes verificações podem ser feitas para garantir que os arquivos sejam recuperados corretamente:

  • Renomeie a pasta de documentos corrompidos
  • Conte os arquivos nas pastas restauradas e combine-os com uma pasta existente.
  • Abra alguns dos arquivos e verifique se eles estão acessíveis. Certifique-se de abri-los com o aplicativo que normalmente os usa. E certifique-se de que você pode navegar pelos dados, atualizá-los ou o que você faz normalmente.
  • É melhor abrir vários arquivos de diferentes tipos, imagens, mp3s, documentos, alguns grandes e outros pequenos.
  • A maioria dos sistemas operacionais possui utilitários que você pode usar para comparar arquivos e diretórios.

Resumo:

Neste tutorial, aprendemos vários aspectos dos testes de recuperação que ajudam a entender se o sistema ou programa atende aos requisitos após uma falha.

Este artigo é uma contribuição de Shweta Priyadarshini