Como garantir a qualidade do seu projeto?

Compartilhar no facebook
Compartilhar no linkedin
Compartilhar no whatsapp

Imagine a seguinte situação: um novo projeto será desenvolvido, mas por conta de alguma questão, uma equipe de teste não é prioridade. O projeto é iniciado e depois de meses, entregue para o cliente. Após a entrega, o sistema começa a ser utilizado e alguns erros são apontados. Neste caso, o time de desenvolvimento volta a trabalhar no projeto, causando uma falta de confiança do cliente com o time, um retrabalho e um gasto de tempo e dinheiro que poderia ser evitado se esses problemas tivessem sido encontrados desde o início do desenvolvimento.

Essa é uma situação que acontece e para não causar esses transtornos depois da fase de desenvolvimento, que tal implementar um processo de teste?

 

Mas afinal, o que é um processo de teste? 

O teste de software visa garantir a qualidade, minimizando as incertezas e sistematizando os critérios de aceitação. Ele valida se o software apresenta um bom funcionamento, se existem problemas e se as expectativas estão sendo atendidas. Contudo, simplesmente executar testes não significa que o software atende todos os critérios de qualidade. Os testes precisam também de um processo, que é basicamente, acompanhar o software desde a sua concepção até a sua manutenção. Consequentemente, quando temos um processo definido e executado, garantimos ainda mais qualidade. 

 

Como aplicamos o processo de teste? 

Quando um projeto está na sua fase inicial, normalmente, já sabemos quais tecnologias serão utilizadas. Enquanto ainda não temos os requisitos (especificações do projeto) para começarmos a pensar nos casos de testes, podemos começar a pensar em uma ferramenta de automação de testes. Por exemplo, se o projeto será desenvolvido em React, temos diversas opções de ferramentas, entre elas, cypress selenium. 

Com os requisitos definidos, podemos começar a criar os casos de testes, definir quais deles podem ser automatizados e junto com os desenvolvedores criarmos uma lista de acceptance tests para a atividade que está sendo desenvolvida. Mas o que é isso? É o mínimo de itens que devem ser desenvolvidos e devem estar funcionando para que aquela atividade possa ser testada e considerada finalizada. Vou falar sobre isso mais a frente.  

Quando isso terminar, provavelmente alguma coisa – mesmo que pequena – de desenvolvimento pode já estar pronta, podemos então, acessar o ambiente de desenvolvimento e iniciar um teste exploratório e até mesmo começar a automatizar alguma coisa. Antecipando os testes, problemas podem ser encontrados antes de serem enviados para a versão, economizando tempo de desenvolvimento e tempo de testes. 

  

Acceptance tests 

Quando a atividade for completamente finalizada, chegou a hora de passarmos pela lista de acceptance tests. Normalmente, vemos mais resultados quando passamos pelo acceptance junto com o desenvolvedor, no próprio ambiente de desenvolvimento dele. Se todos os itens foram feitos e o mínimo necessário funciona, podemos considerar essa atividade pronta para gerarmos a versão. Se algum item não foi feito ou algum problema crítico foi encontrado, o desenvolvedor deverá voltar para a atividade e corrigir o que foi encontrado, minimizando o risco da versão ser gerada com problemas críticos e garantindo boa parte da qualidade do sistema antecipadamente. 

Outro caso é quando já temos uma versão com parte do sistema já estabilizada e temos scripts de automação criados para eles. Esses testes podem ser configurados no Jenkins (ou na ferramenta utilizada pelo projeto) e cada push feito pelo desenvolvedor os scripts de testes automatizados, serão executados, impedindo assim, que as modificações feitas para a nova feature ou correção de bug, não cause nenhum side effect no que antes funcionava, evitando também que esse problema seja encontrado somente quando tivermos uma versão gerada. 

Definindo e executando um processo de testes agregamos muito ao sistema, antecipamos problemas, economizamos tempo teste e de desenvolvimento e consequentemente diminuímos o custo e aumentamos a qualidade, eficiência e confiabilidade do sistema.

Veja mais
Meios de Pagamento
Carlos Franciscatto

Pagamento instantâneo no Brasil

Nos dias de hoje, quando falamos em pagamentos eletrônicos entre pessoas ou empresas (que não deixam de ser transferências de valores entre uma entidade e outra), as opções
Leia mais »
Manufatura
Sylvio Alves

Aumentando a velocidade da manufatura com 5G

As indústrias de manufatura têm buscado oportunidades que permitem o crescimento de negócios através da adoção de novas tecnologias. Robôs autônomos, big data e Machine Learning são exemplos de
Leia mais »
Campinas / SP - Brasil

Estrada Giuseppina Vianelli di Napolli, nº 1.185
Condomínio GlobalTech Campinas
Polo II de Alta Tecnologia
CEP 13086-530 – Campinas – SP
+55 (19) 3755-8600

+55 (19) 3755-8600
contato@venturus.org.br

Bitnami