Teste de Configuração
O Teste de Configuração é uma técnica de teste de software em que o aplicativo de software é testado com várias 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 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 várias combinações de Software e Hardware.
Neste tutorial, você aprenderá-
- O que é teste de configuração?
- Exemplo de teste de configuração
- Pré-requisitos para teste de configuração
- Objetivos do teste de configuração
- Como fazer o teste de configuração
- Casos de teste de amostra
Exemplo de teste de configuração
Vamos entender isso com um exemplo de aplicativo de desktop:
Geralmente, as aplicações Desktop serão de 2 ou 3 camadas, aqui consideraremos uma aplicação Desktop de 3 camadas que é desenvolvida usando Asp.Net e consiste em Cliente, Servidor de Lógica de Negócios e Servidor de Banco de Dados onde cada componente suporta as plataformas mencionadas abaixo.
- Plataforma do cliente - Windows XP, Window7 OS, windows 8 OS, etc
- Plataforma de servidor - Windows Server 2008 R2, Windows Server 2008 R2, Windows Server 2012R2
- Banco de dados - SQL Server 2008, SQL Server 2008R2, SQL Server 2012, etc.
Um testador deve testar a combinação de cliente, servidor e banco de dados com combinações das plataformas mencionadas e versões de banco de dados para garantir que o aplicativo esteja funcionando corretamente e não falhe.
O teste de configuração não é restrito apenas ao software, mas também aplicável ao hardware, por isso também é referido como teste de configuração de hardware, onde testamos diferentes dispositivos de hardware como impressoras, scanners, câmeras da Web, etc. que suportam o aplicativo em teste.
Pré-requisitos para teste de configuração
Para qualquer projeto antes de começar com o teste de configuração, temos que seguir alguns pré-requisitos
- Criação de matriz que consiste em várias 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 é
- Validar o aplicativo para determinar se ele atende aos requisitos de configurabilidade
- Causando manualmente falhas que ajudam a identificar os defeitos que não são encontrados de forma eficiente durante o teste (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 os recursos de hardware como balanceadores de carga, aumentar ou diminuir o tamanho da memória, conectar vários modelos de impressora, etc.
- Analisando a eficiência do sistema com base na priorização, a eficiência com que 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.
Para Ex: Server 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 de configuração.
- Garantir a rastreabilidade dos itens do aplicativo, documentando e mantendo adequadamente as versões que são facilmente identificáveis.
- Verificar o quão gerenciáveis os itens do aplicativo são ao longo do ciclo de vida de desenvolvimento de software.
Como fazer o teste de configuração
Nesta seção, discutiremos a estratégia que precisa ser seguida para os tipos de teste de configuração e há 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 é testar 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 no 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 é demorado, é sempre melhor instalar o aplicativo / software na máquina virtual e continuar o teste. Este processo pode ser executado com várias máquinas virtuais, o que simplifica o trabalho de um testador
O teste de configuração de software pode normalmente 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
- Versão lançada é unidade e teste de integração aprovado
A estratégia de teste típica seguida 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, reprovando manualmente os casos de teste e verificando a eficiência.
Exemplo:
Digamos que haja um aplicativo de banco, que deve ser testado quanto à 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 no teste de integração no laboratório de teste.
Mas se o mesmo aplicativo for instalado em um local do cliente e as máquinas estiverem sem algumas atualizações de software ou as versões das quais o aplicativo depende direta ou indiretamente, há uma chance de que o aplicativo falhe. Para evitar esse tipo de situação, é sempre recomendável reprovar os testes manualmente, removendo alguns dos requisitos de configurabilidade e, em seguida, prosseguir com o teste.
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 um build é lançado, 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 realizar a tarefa acima, uma quantidade significativa de esforço é necessária para instalar o software em cada máquina, anexar o hardware e executar manualmente ou até mesmo automatizar o referido processo acima 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á uma grande quantidade de hardware de computador e periféricos que tornam quase impossível executá-los todos. Portanto, torna-se dever do testador analisar qual hardware é mais utilizado pelos usuários e tentar fazer o teste com base na priorização.
Casos de teste de amostra
Considere um cenário bancário para testar a compatibilidade do hardware. Um aplicativo bancário conectado a uma máquina de contagem de notas deve ser testado com diferentes modelos, como Rolex, Strob, Maxsell, StoK, etc.
Vamos pegar alguns casos de teste de amostra para testar a máquina de contagem de notas
- Verificar 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 sã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
- Verificar se as notas falsas são 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 teste que é difícil. Portanto, é aconselhável terceirizar os testes de configuração de hardware para organizações que os especializam.
Resumo:
Em Engenharia de Software, o Teste de Configuração deve ser dado com igual importância como outros tipos de teste. Sem o teste de configuração sendo executado, é difícil analisar o desempenho ideal do sistema e também o software pode encontrar problemas de compatibilidade nos quais deveria ser executado.