Blog > Níveis de maturidade em automação de testes

18/jan

Neste post será apresentado os níveis de maturidade que uma iniciativa de automação de testes pode ter dentro de uma organização.

Introdução

Neste post será apresentado os níveis de maturidade que uma iniciativa de automação de testes pode ter dentro de uma organização.

Nível 1: Automação acidental

Neste nível, algumas iniciativas individuais baseadas na tentativa e erro e sem suporte ou apoio da alta gerência são iniciadas acidentalmente em virtude de uma alta demanda de testes regressivos. A automação de alguns testes é iniciada sem nenhum planejamento, sem o conhecimento dos paradigmas, tipos, técnicas e melhores práticas da automação de testes. Não existe uma ferramenta institucionalizada na organização e os profissionais não são capacitados nem dominam as ferramentas que são utilizadas. O código não é armazenado sob o controle de versões e o código não é projetado para ser reutilizado (código spaghetti).

Nível 2: Automação proposital

Neste nível, a alta gerência percebe que a automação de testes é uma alternativa para aumentar a cobertura e a profundidade dos testes. A alta gerência suporta e apóia uma iniciativa de introduzir a automação de testes. No entanto, a automação de testes ainda é considerada como mais uma atividade de teste de software e não está formalmente integrada ao ciclo de vida de desenvolvimento. É realizada uma prova de conceito (ou projeto piloto) para determinar qual ferramenta atende as necessidades da organização. Uma consultoria é contratada para disseminar as melhores práticas da automação de testes e capacitar os profissionais. A automação de alguns testes é iniciada por meio de critérios e planejamento rudimentares. A metodologia, processo, diretrizes, padrões e procedimentos estão sendo criados e aprimorados.

Nível 3: Automação formal

Neste nível a ferramenta, metodologia, processo, diretrizes, padrões e procedimentos estão estabelecidos e institucionalizados na organização. A automação de testes é realizada em todos os níveis de testes (Unidade, Integração, Sistema e Aceitação). A automação de testes é tratada como um projeto, com fases, atividades, papéis, cronograma e orçamento independentes. A automação de testes é planejada, estimada e controlada formalmente. A automação de testes é integrada ao ciclo de vida de desenvolvimento de software e, quando é necessário, são adicionados recursos de testabilidade no sistema para facilitar a automação. Os profissionais estão capacitados e motivados. O código é projetado para a reutilização e está sob o controle de versões.

Nível 4: Automação formal em otimização

Neste nível, existe um grupo ou comitê que define, distribui e suporta os procedimentos, políticas e diretrizes da automação de testes. As políticas definidas por esse comitê são colocadas em prática e revisadas periodicamente. Os testes automatizados são revisados por meio de técnicas formais de revisão. Uma política e metodologia de medição são definidas com o objetivo de identificar, coletar e analisar métricas relacionadas à eficiência e eficácia da automação de testes, bem como, propor ações de melhoria.

Os níveis foram inspirados na publicação: KRAUSE Mitchel H. A Maturity Model for Automated Software Testing. Medical Device & Diagnostic Industry Magazine. Dez 1994.

POSTS RELACIONADOS

AGENDA

CURSOS RELACIONADOS