Índice

Introdução
Esta página tem o objetivo de descrever de forma geral o processo de qualidade do fluig, mostrando os níveis de testes que são executados nos processos de Inovação e Manutenção do produto.
Abaixo está ilustrado o fluxograma de desenvolvimento e níveis de teste que são executados em cada atualização do fluig.

Legenda de cores:


1) Processo de Inovação
Na inovação é que são implementadas novidades no produto, ou seja, são desenvolvidos novos recursos funcionais.
Após finalizar o desenvolvimento de uma novidade, esta é submetida aos seguintes níveis de testes:
a) Teste de unidade:
- Primeiro nível de auditoria funcional realizada em cada novidade.
- É realizado por um desenvolvedor par dentro da equipe.
- Verifica se os critérios de aceitação (casos de teste) especificados nas novidades foram atendidos.
- Se o teste for aprovado a novidade é enviada para o teste integrado, caso contrário é gerado um retrabalho.
b) Teste integrado:
c) Quality Inovação:
- Terceiro nível de testes que é realizado após o término de todas as novidades de uma atualização.
- SQAs executam todos os casos de teste que geraram impacto no produto, de acordo com as novidades que foram implementadas.
- Caso sejam identificadas não-conformidades nesta bateria de testes são abertos chamados internos para correção dos bugs.
Caso determinada novidade não esteja pronta e devidamente testada e aprovada a mesma não é liberada para a atualização corrente, sendo transferida para a próxima atualização.
2) Processo de Manutenção
Paralelamente ao processo de Inovação, na Manutenção ocorrem as correções dos chamados de bugs que foram devidamente priorizados para correção e que serão liberados na atualização corrente do fluig.
Após finalizar o ajuste (correção) de um bug, este é submetido aos seguintes níveis de testes:
- a)Teste integrado:
- Após a correção de cada bug é realizado o teste integrado, ou seja, a auditoria funcional.
- É executado por SQA em ambiente específico e adequado para este nível de teste, sendo que neste ambiente contém todas as demais correções de bugs já foram efetuadas.
- Se o teste for aprovado o bug que foi corrigido fica aguardando o término das demais correções planejadas para a atualização, sendo represada para o próximo nível de testes: Quality de Manutenção.
- Se for reprovado, é gerado retrabalho e passa novamente pelo teste integrado.
- b)Quality Manutenção:
- Última e mais importante bateria de testes realizada para liberação da atualização.
- Todas as novidades e bugs previamente testados são unificados formando a atualização a ser liberada.
- Nesta versão unificada e que será “candidata” a liberação é que é executada uma bateria de testes contendo todos os casos de teste essenciais(*) do produto (864 cenários atualmente) em outro ambiente específico para este processo.
- Caso sejam identificadas não-conformidades nesta bateria de testes são abertos chamados internos para correção dos bugs. Estes bugs devem ser corrigidos para a liberação da atualização.
- * Observação: Cenários de testes “essenciais” possuem esta categorização porque são extremamente críticos para utilização do produto.
- Cada novidade realizada no produto gera novos cenários de testes, sendo que alguns deles obrigatoriamente são definidos como “essenciais”, incrementando a bateria de testes do Quality Manutenção.
3) Resumo Tipos de Testes e Responsabilidades

4) Testes Automatizados e Integração Contínua
Complementando os níveis de testes citados anteriormente, utilizamos o Bamboo como software de integração contínua.
O Bamboo possui vários planos de compilação dos ambientes de Manutenção e Inovação, alertando as equipes responsáveis caso ocorra algum erro de compilação do produto.
Além de compilar o produto várias vezes por dia, o Bamboo também executa a bateria de testes automatizados. Seguem abaixo alguns detalhes destes testes:
- A bateria de testes automatizados do fluig possui atualmente 1060 testes. Esta bateria é executada diariamente, 2 vezes por dia para cada um dos 3 bancos homologados pelo fluig: MySQL, SQL-Server e Oracle.
- Em caso de quebra de algum cenário de teste automatizado, a causa deve ser investigada e corrigida com urgência.
- A atualização não é liberada para cliente caso ocorra alguma quebra de teste automatizado.

- Trecho do dashboard de acompanhamento de execução de testes automatizados fluig.