Categoria: Entrevistas

Entre inovação e riscos - Especialistas debatem futuro dos testes de software

Impacto da IA na qualidade de software. Da preguiça dos programadores aos riscos de segurança, os desafios da nova era do desenvolvimento e QA.

Estivemos à conversa com Tiago Honorato, Associate Director na Noesis e responsável pelas áreas de Testing e RPA, e Paulo Carlos, gestor do Centro de Excelência de Quality Assurance e DevOps da mesma empresa. Ambos trouxeram insights sobre temas cruciais, como o impacto da inteligência artificial no desenvolvimento e automação de testes, os desafios na formação de novos talentos e os riscos associados a uma confiança excessiva em métricas e ferramentas tecnológicas.

1# A Inteligência Artificial está a tornar os programadores preguiçosos?

Teamlyzer: Os programadores estão a tornar-se preguiçosos com as ferramentas de inteligência artificial? Quando é que isso pode tornar-se um problema? Ou, na vossa visão, isso nunca será um problema?

Tiago Honorato: Eu acho que os programadores já estão a usar amplamente estas ferramentas. Os IDEs e ferramentas disponíveis hoje em dia, sejam open-source ou comerciais, já incorporam modelos como os linters, que analisam o código em tempo real e recomendam melhorias ou sugerem o próximo passo. Portanto, isso já faz parte da rotina e não é algo do futuro.

Paulo Carlos: Concordo, é uma realidade consolidada.

Tiago Honorato: Sem dúvida, é uma realidade.

Paulo Carlos: Estas ferramentas são, na verdade, uma grande ajuda, especialmente para programadores juniores. Um developer menos experiente pode ter um grande aumento de produtividade. Claro que isso não substitui o conhecimento e a experiência de um sénior, mas acelera significativamente o processo de desenvolvimento.

#2 IA e o aumento dos riscos no desenvolvimento e nos testes

Teamlyzer: A IA cria novos desafios para os testes? Principalmente porque estamos a lidar com mais código gerado por inteligência artificial, e a validação da credibilidade desse código pode trazer riscos, como na área de segurança. Como distinguir profissionais especializados de charlatões que usam essas ferramentas?

Tiago Honorato: Cada vez mais veremos código gerado por IA. A validação da credibilidade desse código é um ponto crítico e pode trazer riscos, especialmente em áreas como segurança. Isso exige mais atenção por parte de testers e developers. Sabemos que muitos juniores, que geralmente trabalham com grande parte do código, ainda não têm essa consciência de segurança. Esta situação representa uma nova variável de risco introduzida por estas ferramentas.

Quanto à distinção entre profissionais especializados e charlatões, isso é um desafio. Sempre que surge uma nova tecnologia, há quem a utilize de forma menos ética. Além disso, o modelo de IA generativa ainda é recente, e não conhecemos completamente os seus "lados sombrios". Por exemplo, estas IAs têm a capacidade de aceder a dados de fontes inesperadas, o que pode originar problemas de privacidade ou segurança.

Estamos a lidar com uma evolução tecnológica extremamente rápida. Antes, mudanças deste tipo levavam anos; agora, levam meses. A IA já existe há décadas, mas o que mudou é o seu acesso democratizado. Isso aumenta os riscos de uso indevido, como erros introduzidos por utilizadores menos experientes. É uma ferramenta poderosa, mas deve ser usada com cautela.

Paulo Carlos: Concordo. Estas ferramentas tornam o processo mais acessível, mas é essencial investir em supervisão e formação de boas práticas para mitigar os riscos.

#3 Investir em IA ou em equipas melhores?

Teamlyzer: As empresas estão a gastar milhões em ferramentas de IA, mas será que não deveriam também formar mais e melhores equipas?

Paulo Carlos: Estamos numa fase de experimentação. Há 15 anos, quando surgiram ferramentas de automação de testes como as da HP, muitos acreditavam que iriam substituir pessoas. O que aconteceu foi o oposto: essas ferramentas acabaram por aumentar o número de profissionais envolvidos. Com a IA generativa, acredito que veremos algo semelhante. Continuaremos a precisar de inovação tecnológica, mas será igualmente essencial investir na formação de profissionais. Saber equilibrar o uso das ferramentas com a criatividade humana é o maior desafio das empresas.

Tiago Honorato: Concordo. É uma questão de equilíbrio. As empresas devem apostar na formação contínua, ao mesmo tempo que integram ferramentas eficazes para aumentar a eficiência e qualidade do trabalho.

#4 Métricas de cobertura de testes: solução ou falsa segurança?

Teamlyzer: A obsessão com métricas de cobertura de testes está a criar uma falsa sensação de segurança? Que problemas vocês já viram acontecer nesse contexto?

Tiago Honorato: Sim, a obsessão com métricas pode ser enganadora. Com a IA, conseguimos gerar mais testes e aumentar a cobertura, mas isso não significa necessariamente que estamos a garantir maior qualidade. O mais importante é validar o que está a ser testado e assegurar que cobre os cenários realmente críticos, especialmente em ambientes de entrega contínua.

Paulo Carlos: Exatamente. As métricas devem ser vistas como ferramentas de apoio, não como o objetivo final. A cobertura de testes é importante, mas não deve criar uma falsa sensação de segurança.

#5 Qualidade sacrificada em nome de deadlines?

Teamlyzer: Por que neste área continuamos a negociar deadlines à custa de qualidade?

Paulo Carlos: Depende de quem assina o cheque.

Tiago Honorato: Muitas vezes, o software vai para produção com falhas conhecidas, mas não críticas, porque o negócio exige rapidez. Em muitos casos, essas falhas são corrigidas rapidamente após o lançamento.

Paulo Carlos: Há formas de mitigar esses riscos, como A/B testing ou Canary deployments, que permitem testar funcionalidades em subsets do sistema antes do lançamento completo. Estas estratégias ajudam a minimizar o impacto das falhas iniciais.

#6 Testes automatizados: uma perda de tempo?

Teamlyzer: Muitos dizem que testes automatizados são uma perda de tempo. Concordam?

Tiago Honorato: Não concordo. No entanto, é essencial analisar o ROI antes de decidir automatizar. Muitos clientes querem automatizar testes antes mesmo de estruturar um processo de gestão de testes. É fundamental automatizar apenas os casos críticos e repetitivos, para maximizar os benefícios.

Na Noesis, fomos pioneiros na automação de testes, mas sempre acreditámos que é preciso critério para selecionar os casos certos. Além disso, algumas ferramentas exigem perfis técnicos, que nem sempre são fáceis de encontrar. É por isso que criámos uma framework que permite que pessoas não técnicas também possam automatizar testes, tornando o processo mais acessível e eficiente.

#7 A intuição supera a automação na descoberta de bugs críticos?

Teamlyzer: A maioria dos bugs críticos são encontrados por intuição, não por testes automatizados. Conseguem provar que estou errado?

Paulo Carlos: Não consigo provar que está errado. No entanto, muitos bugs são descobertos antes mesmo de os testers entrarem em ação, especialmente em fases iniciais do desenvolvimento.

Tiago Honorato: Para dar um exemplo prático, numa equipa com quase 30 testers em 2023, foram encontrados 1700 bugs manualmente, enquanto a automação focada em regressão identificou cerca de 200 bugs. Isto reflete o papel essencial da intuição humana nos testes, complementada pela automação.

#8 Conselhos para quem quer começar na área de qualidade e testes

Tiago Honorato: A área de qualidade deixou de ser apenas uma área menos técnica; agora exige conhecimentos mais avançados. Pessoas curiosas e técnicas têm oportunidades para crescer neste setor, especialmente com o apoio de ferramentas modernas, como a nossa framework, que permite que até profissionais menos técnicos automatizem testes.

Paulo Carlos: A adaptabilidade é crucial. É importante aprender sobre tecnologia, compreender o negócio e saber como ambos se integram. Investimos muito na formação dos nossos talentos, porque acreditamos que essa reciclagem é essencial para manter o ritmo acelerado de evolução do setor.

Partilhar este artigo

Faz a review da tua empresa

Partilha como é o teu (ex) empregador. É anónimo e leva 3 minutos!