O que é teste de configuração? Exemplos de casos de teste

Teste de configuração

Teste de configuração é uma técnica de teste de software na qual o aplicativo de software é testado com múltiplas combinações de software e hardware para avaliar os requisitos funcionais e descobrir as configurações ideais sob as quais o aplicativo de software funciona sem quaisquer defeitos ou falhas.

Conforme discutido acima, o Teste de Configuração é um teste de software em que o aplicativo em teste deve ser testado usando múltiplas combinações de Software e Hardware.

Exemplo de teste de configuração

Vamos entender isso com um exemplo de aplicativo de desktop:

Geralmente, os aplicativos de desktop serão de 2 ou 3 níveis, aqui consideraremos um aplicativo de desktop de 3 níveis que é desenvolvido usando Asp.Net e consiste em Cliente, Business Logic Server e Database Server onde cada componente suporta as plataformas mencionadas abaixo.

  • Plataforma do Cliente – Windows XP, Windows 7, Windows 8, etc.
  • Plataforma de servidor – Windows Servidor 2008 R2,Windows Servidor 2008 R2, Windows Servidor 2012R2
  • Banco de dados –SQL Server 2008, SQL Servidor 2008R2, SQL Server 2012, etc.

Um testador deve testar a combinação de cliente, servidor e banco de dados com combinações das plataformas e versões de banco de dados mencionadas acima para garantir que o aplicativo esteja funcionando corretamente e não falhe.

O teste de configuração não se restringe apenas ao Software, mas também é aplicável ao Hardware, por isso também é conhecido como teste de configuração de Hardware, onde testamos diferentes dispositivos de hardware como impressoras, scanners, webcams, etc., que suportam o aplicativo em teste.

Teste de configuração

Pré-requisitos para teste de configuração

Para qualquer projeto antes de iniciar o teste de configuração, temos que seguir alguns pré-requisitos

  • Criação de matriz que consiste em diversas combinações de configurações de software e hardware
  • Priorizando as configurações, pois é difícil testar todas as configurações
  • Testando cada configuração com base na priorização.

Objetivos do teste de configuração

Os objetivos do teste de configuração são

  • Validar o aplicativo para determinar se ele atende aos requisitos de configurabilidade
  • Causar manualmente falhas que auxiliam na identificação de defeitos que não são encontrados de forma eficiente durante os testes (Ex: alterar as configurações regionais do sistema como Fuso Horário, Idioma, Formatos de data e hora, etc.)
  • Determine uma configuração ideal do aplicativo em teste.
  • Analisar o desempenho do sistema adicionando ou modificando recursos de hardware como Load Balancers, aumentando ou diminuindo o tamanho da memória, conectando vários modelos de impressora, etc.
  • Analisar a eficiência do sistema com base na priorização, quão eficientemente os testes foram realizados com os recursos disponíveis para atingir a configuração ideal do sistema.
  • Verificação do sistema em um ambiente distribuído geograficamente para verificar a eficácia do desempenho do sistema. Por exemplo: Servidor em um local diferente e clientes em um local diferente, o sistema deve funcionar bem, independentemente das configurações do sistema.
  • Verificar a facilidade com que os bugs são reproduzíveis, independentemente das alterações na configuração.
  • Garantir o quão rastreáveis ​​são os itens do aplicativo, documentando e mantendo adequadamente as versões que são facilmente identificáveis.
  • Verificando o quão gerenciáveis ​​são os itens do aplicativo em todo o ciclo de vida de desenvolvimento de software.

Como fazer testes de configuração

Nesta seção, discutiremos a estratégia que precisa ser seguida para os tipos de teste de configuração e existem dois tipos de teste de configuração, conforme mencionado abaixo

  • Teste de configuração de software
  • Teste de configuração de hardware

Teste de configuração de software

O teste de configuração de software testa o aplicativo em teste com vários sistemas operacionais, diferentes atualizações de software, etc. O teste de configuração de software consome muito tempo, pois leva tempo para instalar e desinstalar diferentes softwares usados ​​​​para o teste.

Uma das abordagens seguidas para testar a configuração do software é testar em Máquinas Virtuais. Máquina Virtual é um Ambiente que é instalado em software e atua como um Hardware Físico e os usuários terão a mesma sensação de uma Máquina Física. Máquinas Virtuais simulam configurações em tempo real.

Em vez de instalar e desinstalar o software em várias máquinas físicas, o que consome muito tempo, é sempre melhor instalar o aplicativo/software na máquina virtual e continuar os testes. Este processo pode ser realizado tendo vários máquinas virtuais, o que simplifica o trabalho de um testador

O teste de configuração de software normalmente pode começar quando

  • Os requisitos de configurabilidade a serem testados são especificados
  • O ambiente de teste está pronto
  • A equipe de teste é bem treinada em testes de configuração
  • Build lançado é unidade e teste de integração aprovado

Típica Estratégia de Teste O que é seguido para testar o teste de configuração de software é executar o conjunto de testes funcionais em várias configurações de software para verificar se o aplicativo em teste está funcionando conforme desejado, sem falhas ou erros.

Outra estratégia é garantir que o sistema esteja funcionando bem falhando manualmente nos casos de teste e verificando a eficiência.

Exemplo:

Digamos que haja um aplicativo bancário, que deve ser testado quanto à sua compatibilidade em vários navegadores, quando o aplicativo está hospedado em um ambiente onde todos os pré-requisitos estão presentes, ele pode passar na unidade e Teste de integração no laboratório de testes.

Mas se o mesmo aplicativo estiver instalado em um local cliente e as máquinas não tiverem algumas atualizações de software ou versões das quais o aplicativo depende direta ou indiretamente, há uma chance de o aplicativo falhar. Para evitar esse tipo de situação, é sempre sugerido falhar nos testes manualmente, removendo alguns dos requisitos de configurabilidade e depois prosseguir com os testes.

Teste de configuração

Teste de configuração de hardware

O teste de configuração de hardware geralmente é realizado em laboratórios, onde encontramos máquinas físicas com diferentes hardwares conectados a elas.

Sempre que uma compilação é lançada, o software deve ser instalado em todas as máquinas físicas onde o hardware está conectado, e o conjunto de testes deve ser executado em cada máquina para garantir que o aplicativo esteja funcionando bem.

Para executar a tarefa acima, é necessário um esforço significativo para instalar o software em cada máquina, conectar o hardware e executar manualmente ou mesmo para automatizar o processo acima mencionado e executar o conjunto de testes.

Além disso, ao realizar o teste de configuração de hardware, especificamos o tipo de hardware a ser testado, e há muitos hardwares e periféricos de computador que tornam praticamente impossível executar todos eles. Portanto, passa a ser dever do testador analisar qual hardware é mais utilizado pelos usuários e tentar fazer os testes com base na priorização.

Exemplos de casos de teste

Considere um cenário bancário para testar a compatibilidade de hardware. Um aplicativo bancário conectado à máquina de contagem de notas deve ser testado com diferentes modelos como Rolex, Strob, Maxsell, StoK, etc.

Vamos pegar alguns exemplos de casos de teste para testar a máquina de contagem de notas

  • Verificando a conexão do aplicativo com o modelo Rolex quando os pré-requisitos NÃO estão instalados
  • Verificando a conexão do aplicativo com o modelo Rolex quando os pré-requisitos estão instalados
  • Verifique se o sistema está contando as notas corretamente
  • Verifique se o sistema está contando as notas incorretamente
  • Verificando as notas adulteradas
  • Verificando os tempos de resposta
  • Verificando se as notas falsas foram detectadas e assim por diante

Os casos de teste acima são para um modelo, e o mesmo deve ser testado com todos os modelos disponíveis no mercado, configurando-os em um laboratório de testes o que é difícil. Portanto, é aconselhável terceirizar os testes de configuração de hardware para organizações especializadas.

Resumo

Na Engenharia de Software, o Teste de Configuração deve ter a mesma importância que outros tipos de teste. Sem a realização de testes de configuração, é difícil analisar o desempenho ideal do sistema e também o software pode encontrar problemas de compatibilidade nos quais deveria ser executado.