O que é teste de configuração? Exemplos de casos de teste
⚡ Resumo Inteligente
O teste de configuração executa um aplicativo em diversas combinações de software e hardware, permitindo que a equipe confirme se os requisitos funcionais ainda são válidos em todos os ambientes e identifique a configuração ideal para o lançamento.
Teste de configuração
Teste de configuração É uma técnica de teste de software na qual o aplicativo é testado com múltiplas combinações de software e hardware, a fim de avaliar os requisitos funcionais e encontrar as configurações ideais sob as quais o aplicativo funciona sem defeitos ou falhas.
Uma configuração é qualquer combinação que o produto deve suportar: uma versão do sistema operacional, um navegador, uma versão do banco de dados, um driver, um tamanho de memória ou um periférico conectado. Vale a pena separar isso de teste de compatibilidadeO teste de compatibilidade questiona se o produto coexiste com outros softwares e plataformas. Já o teste de configuração faz uma pergunta mais específica: a mesma versão continua funcionando corretamente após alterações em sua configuração suportada?
Exemplo de teste de configuração
Considere um aplicativo de desktop como exemplo prático.
Os aplicativos de desktop geralmente são construídos em arquiteturas de 2 ou 3 camadas. Considere um aplicativo de desktop de 3 camadas desenvolvido em ASP.NET, consistindo em um Cliente, um Servidor de Lógica de Negócios e um Servidor de Banco de Dados, onde cada componente suporta as plataformas listadas abaixo.
- Plataforma do cliente – Windows XP, Windows 7, Windows 8, e assim por diante
- Plataforma de servidor – Windows Servidor 2008, Windows Servidor 2008 R2, Windows Servidor 2012 R2
- Base de dados - SQL Servidor 2008, SQL Server 2008 R2, SQL Server 2012 e assim por diante.
O testador deve exercitar o cliente, o servidor e o banco de dados em conjunto, em todas as versões da plataforma e do banco de dados, para confirmar se o aplicativo funciona corretamente e não apresenta falhas em nenhuma combinação suportada.
Os testes de configuração não se restringem ao software. Eles também se aplicam ao hardware, razão pela qual a parte de hardware é chamada de teste de configuração de hardware: impressoras, scanners, webcams e dispositivos similares que o aplicativo em teste precisa suportar. A matriz abaixo mostra como essas combinações são organizadas antes do início da execução do teste.
Pré-requisitos para teste de configuração
Antes de iniciar o teste de configuração em qualquer projeto, três pré-requisitos devem ser atendidos.
- Criação de uma matriz listando as várias combinações de configurações de software e hardware.
- Priorizar essas configurações, pois testar todas elas não é realista.
- Testar cada configuração na ordem definida por essa priorização.
Objetivos do teste de configuração
O teste de configuração tem como objetivo atingir os seguintes objetivos.
- Validar a aplicação em relação aos seus requisitos de configurabilidade.
- Provoque falhas deliberadamente para revelar defeitos que os testes comuns não detectam, por exemplo, alterando configurações regionais como fuso horário, idioma ou formato de data.
- Determine a configuração ideal da aplicação em teste.
- Analise o desempenho do sistema enquanto os recursos de hardware são alterados, como a adição de balanceadores de carga, o aumento ou redução da memória ou a conexão de diferentes modelos de impressora.
- Analise a eficiência do sistema em relação à priorização, avaliando o quão bem os testes utilizaram os recursos disponíveis para alcançar a configuração ideal.
- Verifique o sistema em um ambiente geograficamente distribuído, por exemplo, com o servidor em um local e os clientes em outro, onde o sistema deve funcionar independentemente das configurações locais do sistema.
- Verifique com que facilidade os defeitos se reproduzem quando a configuração é alterada.
- Confirme se os itens do aplicativo permanecem. tracviabilizado por meio de documentação adequada e registros de versão claramente identificáveis.
- Confirme se os itens do aplicativo permanecem gerenciáveis durante todo o processo. ciclo de vida de desenvolvimento de software
Como fazer testes de configuração
A estratégia depende de qual dos dois tipos de teste de configuração está em questão.
- 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 executa o aplicativo em teste em vários sistemas operacionais, atualizações de software e versões de dependências. É um processo demorado, pois cada execução envolve a instalação e desinstalação do software em questão.
Uma maneira comum de reduzir esse custo é realizar testes em máquinas virtuaisUma máquina virtual é um ambiente instalado em software que se comporta como hardware físico, permitindo que o testador trabalhe como se estivesse em uma máquina real, embora a configuração em si seja descartável. As máquinas virtuais simulam configurações reais com precisão suficiente para a maioria das verificações funcionais.
Em vez de instalar e desinstalar em várias máquinas físicas, o aplicativo é instalado em uma máquina virtual e os testes continuam a partir daí. Executar várias máquinas virtuais em paralelo, cada uma restaurada a partir de um snapshot, simplifica consideravelmente o trabalho.
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 testes é treinada em testes de configuração.
- A versão lançada passou nos testes de unidade e integração.
A estratégia de teste Uma estratégia consiste em executar o conjunto de testes funcionais em cada configuração de software e verificar se o aplicativo se comporta conforme o esperado, sem falhas ou erros. Uma segunda estratégia é provocar falhas deliberadamente nos casos de teste e verificar a eficiência com que o sistema lida com elas.
Exemplo:
Considere um aplicativo bancário que precisa ser testado em vários navegadores. Hospedado em um ambiente onde todos os pré-requisitos estão presentes, ele pode muito bem passar nos testes unitários e teste de integração no laboratório de testes.
Instalado no ambiente do cliente, o mesmo aplicativo pode falhar porque essas máquinas não possuem atualizações de software ou versões de dependência das quais o aplicativo depende direta ou indiretamente. A falha deliberada nos testes, por meio da remoção de alguns requisitos de configuração e posterior execução dos testes, é o que expõe esse tipo de defeito antes que o cliente o encontre. A imagem abaixo mostra a reprodução de uma falha dependente da configuração em um ambiente controlado.
Teste de configuração de hardware
Os testes de configuração de hardware geralmente são realizados em um laboratório que possui máquinas físicas com diferentes componentes de hardware conectados a elas.
Sempre que uma versão é lançada, o software é instalado em todas essas máquinas e o conjunto de testes é executado em cada uma delas, para confirmar se o aplicativo funciona com o dispositivo conectado.
Essa tarefa exige um esforço considerável: instalar o software em cada máquina, conectar o hardware e, em seguida, executar o pacote manualmente ou automatizá-lo primeiro.
O tipo de hardware a ser testado também precisa ser especificado. Existe uma variedade tão grande de hardware e periféricos de computador que é impossível abranger todos eles; portanto, o testador analisa quais dispositivos a base de usuários realmente utiliza e realiza os testes de acordo com essa priorização.
Exemplos de casos de teste
Considere um cenário bancário com testes de compatibilidade de hardware. Um aplicativo bancário conectado a uma máquina de contar notas precisa funcionar com diversos modelos, como Rolex, Strob, Maxsell e StoK.
Amostra casos de teste Para a máquina de contar notas, inclua o seguinte.
- Verifique a conexão entre o aplicativo e o modelo Rolex quando os pré-requisitos NÃO estiverem instalados.
- Verifique a conexão entre o aplicativo e o modelo Rolex após a instalação dos pré-requisitos.
- Verifique se o sistema está contando as notas corretamente.
- Verifique como o sistema reporta uma contagem incorreta.
- Verificar o manuseio de notas adulteradas
- Verifique os tempos de resposta.
- Verifique se notas falsas foram detectadas.
Esses casos se referem a um único modelo, e cada modelo restante no mercado precisa ser configurado em um laboratório de testes e testado da mesma maneira, o que raramente é viável internamente. A terceirização dos testes de configuração de hardware para uma organização especializada costuma ser a opção mais realista.


