Por que testar? A importância da qualidade nos sistemas

Juliana Nascimento
Comunidade XP
3 min readSep 14, 2022

--

O mundo de TI não é para os fracos, disso todos nós sabemos. Mas, será que nossos profissionais estão preparados para um novo modo de trabalho? No mundo pós-pandemia muitas mudanças ocorreram, em diversas partes do mundo, áreas profissionais e pessoais. Olha aí a seleção natural de Darwin agindo novamente.

Falando estritamente do nosso ramo em TI, a área de Qualidade, também conhecida como QA ou Quality Assurance, vem deixando de ser vista apenas como uma área “robô” e até mesmo uma área para quem não curte programação, ou mesmo o estereotipo mais absurdo que já ouvi, a área conhecida como uma “área para devs que não deram certo ”. Nós temos uma necessidade constante de colocar a nós mesmos e nossos semelhantes em caixinhas e rótulos. Vamos te mostrar, até o final desse artigo, que não é e não deve ser assim.

Você já ouviu falar de uma empresa que perdeu clientes porque seus usuários não conseguiam utilizar o aplicativo? Você mesmo, que está lendo, já migrou de um app para outro porque o primeiro só dava erro no login? Não fazia a busca por um produto de forma correta? Pois bem, uma das atribuições da área de Qualidade é garantir que isso nunca ocorra com você.

Prestou atenção? Eu disse UMA das. Antigamente, nós éramos os famosos Testers. O processo, em resumo e podendo variar de uma empresa para outra, funcionava assim:

Desenvolvedores codificam → QA testa → Negócio homologa → Desenvolvedores implantam em Produção

Hoje em dia, além do processo não conter a espera entre uma fase e outra — as funcionalidades, antes, precisavam estar prontas para serem passadas de uma única vez ao QA (tester) — os Desenvolvedores aprendem a codificar seus próprios testes, não ficando dependentes que alguém teste por eles. Mais para a frente a gente conversa sobre as automações, prometo. Seguindo a ideia de o próprio time de desenvolvimento codificar os testes, o QA deixou de ser uma mera peça final do processo: além da qualidade ser inserida ao processo (o dev codifica, desenvolve os testes e testa enquanto roda seu código), também é peça fundamental para melhorar a vida do desenvolvedor (mesmo que nem todos vejam dessa forma). Uma das atribuições — mais recentes — é a pesquisa, PoC (prova de conceito) e melhoria de frameworks e ferramentas que ajudem a evoluir a qualidade e velocidade dos testes.

O termo utilizado é Shift-left Testing. Nome legal, né? Na prática, é iniciar o planejamento e os testes desde o início do ciclo de vida de desenvolvimento. Mais barato, mais rápido e mais fácil também.

E como vou saber se estou testando certo? Se posso melhorar? Bom, separamos 5 dicas conforme imagem abaixo.

Imagem 1: 5 dicas sobre testes, cultura de qualidade e planejamento

Testes Automatizados

A nova febre, explanada como bala de prata por alguns, parece às vezes ser a solução de todos os problemas sobre qualidade das equipes de desenvolvimento de software. E, para ser bem sincera, é realmente uma ótima solução se a equipe já aplica todos os conceitos de qualidade. Testes unitários e mutantes, testes de interface (UI), exploratórios e regressivos, se bem desenvolvidos e aplicados, com certeza ajudará muito na economia do tempo de desenvolvimento (lead time) e de deploy, visto que os testes demorarão menos tempo para execução e consequentemente adiantariam o momento de deploy.

Imagem 2: tela de celular com prancheta e lista com itens concluídos e não concluídos e tela de monitor com imagem de internet e engrenagem em verde com um check de conclusão no centro

Após todo o processo…

Como diz o apresentador de um famoso Podcast do mundo Nerd: TI é bruxaria. E realmente concordo, porém, acho que se fizermos o feitiço certo (testes bem construídos e executados), a bruxaria nunca falha! Com a evolução e maturidade dos testes, é possível também que se torne desnecessária a realização de determinados testes. Mas tudo precisa ser avaliado!

--

--

Juliana Nascimento
Comunidade XP

Curious, applied and determined, I’ve always had a passion for writing. Started here to share my point of everything I learn. Working with IT Quality and Data .