TESTES
INTEGRAÇÃO CONTÍNUA
Integração Contínua é uma prática de desenvolvimento de software onde os membros de um time integram seu trabalho frequentemente. Cada integração é verificada por um build automatizado (incluindo testes) para detectar erros de integração o mais rápido possível.
Pontos positivos: A grande vantagem da integração contínua está no feedback instantâneo. A cada commit no repositório, o build é feito automaticamente, com todos os testes sendo executados de forma automática e falhas sendo detectadas. Se algum commit não compilar ou quebrar qualquer um dos testes, a equipe toma conhecimento instantaneamente. A equipe pode então corrigir o problema o mais rápido possível, o que é fundamental para não introduzir erros ao sistema. Integração contínua traz segurança em relação a mudanças: você pode fazer modificações sem medo, pois será avisado caso algo saia do esperado. O servidor de integração contínua realiza todos os testes do sistema e garante que tudo esteja funcionando.
A ferramenta escolhida para realizar a integração contínua no projeto “Adoções” é o CircleCI, que tem grande suporte para aplicações Node.js. O CircleCI inspeciona o código antes de cada compilação para inferir suas configurações, dependências e etapas de teste. Você pode alterar os comandos de teste em um arquivo circle.yml verificado no diretório raiz do repositório do github.
Começando a utilizar o CircleCI
Adicionando um projeto ao Circle: Depois de se registar numa conta e iniciar sessão, deverá ver um botão 'Adicionar projetos' no lado esquerdo do painel do seu Circle.
Em seguida, escolha a organização GitHub em que seu projeto está:
Escolha o projeto que deseja integrar e clique em “Build Project”:
Após, o Circle iniciará a primeira compilação do seu projeto. A compilação inicial provavelmente irá falhar, é necessário configurar o Circle no arquivo “circle.yml”. Dentro do arquivo circle.yml podem ir alguns testes que serão realizados a cada vez que alguém fizer commit no repositório. O Circle também procura em outras pastas do repositório, geralmente numa pasta chamada “test”, se foram inseridas classes de teste.
Guia detalhado para configuração do circle.yml: https://circleci.com/docs/1.0/configuration/