Teste de software - QA, QC e testes

Teste, garantia de qualidade e controle de qualidade

A maioria das pessoas fica confusa quando se trata de identificar as diferenças entre garantia de qualidade, controle de qualidade e testes. Embora estejam inter-relacionados e até certo ponto, podem ser considerados como atividades iguais, mas existem pontos distintivos que os diferenciam. A tabela a seguir lista os pontos que diferenciam QA, QC e teste.

Garantia da Qualidade Controle de qualidade Testando
QA inclui atividades que garantem a implementação de processos, procedimentos e padrões no contexto para verificação do software desenvolvido e requisitos pretendidos. Inclui atividades que garantem a verificação de um software desenvolvido em relação aos requisitos documentados (ou não em alguns casos). Inclui atividades que garantem a identificação de bugs / erros / defeitos em um software.
Concentra-se em processos e procedimentos em vez de conduzir testes reais no sistema. Concentra-se no teste real executando o software com o objetivo de identificar bug / defeito por meio da implementação de procedimentos e processos. Concentra-se em testes reais.
Atividades orientadas a processos. Atividades orientadas para o produto. Atividades orientadas para o produto.
Atividades preventivas. É um processo corretivo. É um processo preventivo.
É um subconjunto do Software Test Life Cycle (STLC). O CQ pode ser considerado como o subconjunto da Garantia de Qualidade. Teste é o subconjunto do Controle de Qualidade.

Auditoria e Inspeção

Audit- É um processo sistemático para determinar como o processo de teste real é conduzido dentro de uma organização ou equipe. Geralmente, é um exame independente dos processos envolvidos durante o teste de um software. De acordo com o IEEE, é uma revisão dos processos documentados que as organizações implementam e seguem. Os tipos de auditoria incluem Auditoria de Conformidade Legal, Auditoria Interna e Auditoria de Sistema.

Inspection- É uma técnica formal que envolve revisões técnicas formais ou informais de qualquer artefato, identificando qualquer erro ou lacuna. De acordo com o IEEE94, a inspeção é uma técnica de avaliação formal na qual os requisitos, projetos ou códigos de software são examinados em detalhes por uma pessoa ou grupo diferente do autor para detectar falhas, violações dos padrões de desenvolvimento e outros problemas.

As reuniões formais de inspeção podem incluir os seguintes processos: Planejamento, Preparação da Visão Geral, Reunião de Inspeção, Retrabalho e Acompanhamento.

Teste e depuração

Testing- Envolve a identificação de bug / erro / defeito em um software sem corrigi-lo. Normalmente, profissionais com experiência em garantia de qualidade estão envolvidos na identificação de bugs. O teste é realizado na fase de teste.

Debugging- Envolve identificar, isolar e corrigir os problemas / bugs. Os desenvolvedores que codificam o software realizam a depuração ao encontrar um erro no código. A depuração é uma parte do Teste de Caixa Branca ou Teste de Unidade. A depuração pode ser realizada na fase de desenvolvimento durante a realização de testes de unidade ou em fases durante a correção dos bugs relatados.