O que é o teste de fumaça?
O teste de fumaça é um tipo de teste de software que é basicamente feito para garantir se a compilação implantada no ambiente de controle de qualidade pelos desenvolvedores é estável o suficiente para prosseguir nos testes rigorosos ou exaustivos. O teste de fumaça verifica a estabilidade do software. Isso envolve a execução de casos de teste mínimos para verificar se as funcionalidades críticas do software estão funcionando bem. É feito pela conformidade que a compilação não está bloqueada e que agora está aprovada para testes adicionais. É por isso que o teste de fumaça também é conhecido como Teste de Conformidade ou Teste de Verificação de Construção.
Por que precisamos de testes de fumaça?
Esse teste geralmente é realizado nos estágios inicial / inicial dos aplicativos de software quando o software é lançado para o teste da equipe de controle de qualidade. Considere o cenário de um aplicativo de comércio eletrônico, quando a criação do software é implantada no ambiente de teste para teste, mas durante o teste, verifica-se que o usuário não pode efetuar login no aplicativo para prosseguir e executar qualquer tarefa ou podemos dizer que o usuário está bloqueado para usar o aplicativo, pois a primeira etapa do log não está funcionando. Não há como executar testes exaustivos e detalhados de outros módulos se a funcionalidade crítica não estiver funcionando bem. Para lidar com esses tipos de situações, esse teste é realizado, pois ajuda a reduzir o tempo e os esforços da equipe de teste desperdiçados nos testes detalhados, se a compilação não for estável o suficiente para executar os testes.
Algumas das principais razões pelas quais os testes de fumaça são realizados são apresentados abaixo:
- Ajuda a encontrar os principais problemas do aplicativo apenas na inicialização.
- Isso ajuda a reduzir o tempo e os esforços da equipe de controle de qualidade que podem ser desperdiçados se a construção não for estável.
- Ajuda na identificação precoce de defeitos.
- Ajuda a encontrar a estabilidade dos aplicativos de software.
Técnicas de teste de fumaça
Geralmente, é realizada manualmente ou por meio de automação, técnicas dependendo do tipo de projeto e das políticas da organização.
1. Teste manual de fumaça
Geralmente, o teste de fumaça é realizado manualmente para descobrir que as funcionalidades críticas do aplicativo estão funcionando bem. O teste manual é como o General Health Checkup e descobre os erros críticos e de alta qualidade nos estágios iniciais dos testes de software, passando rapidamente pelo aplicativo. O teste de fumaça é feito manualmente, executando o número limitado de casos de teste, a fim de encontrar a estabilidade de um aplicativo, se ele estiver pronto para prosseguir para testes exaustivos.
2. Teste de automação de fumaça
Faz parte do teste de regressão e agora os testadores automatizam os casos de teste antes que a compilação seja liberada para a equipe de teste. Os casos de teste podem ser automatizados usando várias estruturas de automação disponíveis no mercado. Os casos de teste automatizados são muito úteis, pois ajudam a reduzir os esforços manuais da equipe de testes toda vez que a nova compilação é lançada. Depois que os casos de teste para os testes de fumaça são automatizados, as equipes de controle de qualidade executam o trabalho com o conjunto de testes automatizados, fornecendo resultados rápidos sem nenhuma intervenção manual para encontrar a estabilidade de um aplicativo.
Como funciona o teste de fumaça?
Vamos entender o funcionamento do teste de fumaça através do procedimento passo a passo:
- Quando a criação do software está pronta, ela é implantada para teste (em um ambiente de teste) na equipe de controle de qualidade.
- Ao receber a construção do software, a equipe de teste cria os casos de teste de acordo com os requisitos para verificar a estabilidade da construção.
- Somente os casos de teste importantes e críticos criados agora são executados pela equipe de teste manualmente ou por meio de scripts de automação.
- Após a execução dos scripts de teste no ambiente de teste, é decidido se a compilação é estável o suficiente para avançar para o teste Funcional ou mais rigoroso ou se a compilação falha, é considerada instável e, portanto, revertida para os desenvolvedores e não mais testes são realizados nessa compilação.
Vantagens e desvantagens
Abaixo são mencionadas algumas vantagens e desvantagens:
Vantagens
Algumas das vantagens são dadas abaixo:
- Uma das maiores vantagens do teste de fumaça é que ele ajuda na identificação precoce dos defeitos encontrados nas funcionalidades críticas do sistema.
- O teste de fumaça ajuda a reduzir o risco de falha, pois os defeitos são encontrados cedo.
- O teste de fumaça é bastante fácil de executar, pois não são necessários esforços especiais da equipe de teste.
- O teste de fumaça ajuda a economizar tempo e esforços da equipe de teste.
- Ajuda na melhoria geral da qualidade dos aplicativos de software.
- Ele precisa apenas de um número limitado de casos de teste para ser executado, cobrindo principalmente cenários positivos.
- O teste de fumaça também ajuda na conformação dos requisitos, conforme mencionado na SRS.
Desvantagens
Algumas das desvantagens são mencionadas abaixo:
- É necessária documentação adequada no caso de testes de fumaça, portanto, uma equipe de testes especializada é necessária para isso.
- Às vezes, o teste de fumaça causa perda de tempo se a criação do software não for estável.
- No caso de algumas pequenas alterações no aplicativo, não vale a pena realizar o teste de fumaça em todo o aplicativo de ponta a ponta.
- Às vezes, mesmo após o teste de fumaça de todo o aplicativo, surgem problemas críticos na integração e no teste do sistema.
- Qualquer bug / problema deixado no teste de fumaça pode causar erros no futuro.
- Em qualquer projeto de software, o tempo é diretamente proporcional ao custo e o teste de fumaça é totalmente baseado em scripts, portanto é necessária mão de obra especial, o que, por sua vez, aumenta o orçamento do projeto.
Conclusão
A descrição acima explica claramente o que é o teste de fumaça e por que é realizado. Antes de liberar qualquer aplicativo de software para os usuários finais, vários tipos de teste são realizados em diferentes pontos. É um dos tipos mais importantes de teste e tem um motivo simples e direto de encontrar defeitos nos estágios iniciais para verificar se as funcionalidades críticas do software estão funcionando bem. É um subconjunto de testes de aceitação e pode ser realizado por testadores ou desenvolvedores.
Artigos recomendados
Este foi um guia para o teste de fumaça. Aqui também discutimos por que precisamos de técnicas de fumaça, vantagens e desvantagens. Você também pode dar uma olhada nos seguintes artigos para saber mais:
- Teste de Mainframe
- O que é teste funcional?
- Ciclo de vida dos testes de software
- Teste de estabilidade