Testes com IA: o que automatizar primeiro numa equipa de QA

Avatar
Autor

A maioria das equipas que começa a usar testes com IA começa pelo mesmo sítio: pede à ferramenta que gere mais testes. A cobertura sobe depressa. Algumas semanas depois, a equipa percebe que tem o dobro dos scripts para manter.

Gerar testes é a tarefa que as demonstrações mostram melhor. Raramente é a que mais tempo poupa. Numa equipa de QA com uma suíte em produção, o tempo vai sobretudo para manter o que já existe, para separar falhas reais de falhas do próprio script e para explicar a quem decide o que foi testado.

Este artigo propõe uma ordem de adoção. Começa nas tarefas onde a IA reduz trabalho sem acrescentar risco e deixa para o fim as que dependem de critério humano.

5 passos
Ordem de adoção proposta neste artigo, da regressão à geração de novos cenários
4 frameworks
Selenium, Cypress, Playwright e Robot Framework, todas suportadas pelo Qualiagentic sem runtime proprietário
6 a 8 semanas
Duração típica de um piloto com uma aplicação, uma framework e um critério de sucesso
1 regra
Nenhuma alteração automática entra na suíte sem aprovação de uma pessoa

Porque é que gerar testes não deve ser o primeiro passo?

Porque mais testes não significam mais defeitos encontrados. Os testes gerados a partir do código tendem a confirmar o que o código já faz, incluindo os seus erros. Os testes gerados a partir de requisitos são mais úteis, mas só se os requisitos estiverem escritos com rigor suficiente para isso.

Há ainda um custo que aparece mais tarde. Cada teste novo é um teste a manter. Uma suíte que duplica de tamanho sem mecanismo de manutenção fica mais lenta, falha mais vezes por razões que nada têm a ver com a aplicação e perde a confiança da equipa. Analisámos este problema em detalhe no nosso artigo sobre geração de casos de teste com IA.

Gerar testes é a parte fácil. Mantê-los a funcionar quando o código muda é onde se gasta o tempo de uma equipa de QA.

Por onde começar com testes com IA?

Pela ordem em que o risco é menor e o ganho é mais fácil de medir.

  1. 1
    Regressão sobre requisitos estáveis. Escolha uma área da aplicação que muda pouco e tem requisitos claros no Jira, no ALM ou no Confluence. Gere os testes de regressão a partir desses requisitos e compare-os com os que a equipa já tem. O resultado é fácil de validar porque a equipa conhece bem o comportamento esperado.
  2. 2
    Manutenção dos scripts existentes. Quando um seletor muda ou um campo é renomeado, a ferramenta propõe a correção. A pessoa aprova ou rejeita. É aqui que se recupera a maior parte do tempo, porque é o trabalho mais repetitivo da semana.
  3. 3
    Triagem de falhas. Separar falhas da aplicação de falhas do script e agrupar as que têm a mesma causa. Uma execução noturna com quarenta falhas que se resumem a três problemas reais deixa de consumir a manhã inteira.
  4. 4
    Cobertura e lacunas. Com a suíte estável, a IA compara requisitos com testes e mostra o que não está coberto, o que está duplicado e o que já não corresponde a nenhum requisito.
  5. 5
    Novos cenários a partir de requisitos novos. Só agora a geração em escala faz sentido. A equipa já tem um processo de manutenção, já confia na triagem e sabe ler os resultados.

O que deve continuar nas mãos da equipa?

Nem tudo o que pode ser automatizado deve ser. Esta tabela resume onde estamos hoje, com base no trabalho com equipas de QA em setores regulados.

TarefaAutomatizar com IAPorquê
RegressãoSim, primeiroComportamento conhecido, resultado fácil de validar, ganho imediato em tempo.
Manutenção de scriptsSim, com aprovaçãoTrabalho repetitivo. A aprovação humana evita que uma regressão real seja corrigida como se fosse um seletor partido.
Triagem de falhasSimA classificação pode ser revista em segundos. O erro é barato e o ganho é diário.
Testes exploratóriosNãoDependem de curiosidade e de conhecimento do negócio. São onde aparecem os defeitos que ninguém previu.
Estratégia de testesNãoDecidir o que testar, com que profundidade e com que risco aceitável é uma decisão de gestão.
Aceitação com o negócioEm parteA IA prepara cenários e evidência. A validação final pertence a quem conhece o processo.
Em setores regulados, cada alteração automática deve deixar rasto: o que mudou, quem aprovou e quando. Sem esse registo, a poupança de tempo transforma-se num problema de auditoria.

Self-healing: o que corrige e o que esconde

O self-healing é a capacidade de um script se corrigir quando a interface muda. É útil e é também a funcionalidade que mais cuidado exige.

  • Corrige bem as mudanças de forma. Um botão que mudou de identificador, um campo que passou para outro sítio da página, um texto alterado. São falhas do script e a correção automática poupa trabalho real.
  • Pode esconder mudanças de comportamento. Se um botão desapareceu porque uma funcionalidade foi removida por engano, o script que procura um botão parecido e continua não está a corrigir nada. Está a esconder um defeito.
  • Precisa de um limite claro. As correções de seletores podem ser propostas automaticamente. As que alteram o fluxo do teste ou o resultado esperado devem exigir revisão.
  • Tem de ficar registado. Cada correção automática deve aparecer no histórico do teste. Uma suíte que se altera sozinha sem registo deixa de ser evidência de qualidade.
O Qualiagentic gera testes a partir de requisitos, mantém a suíte com aprovação humana em cada passo e regista toda a cadeia, do requisito ao resultado. Funciona on-premise, em cloud privada ou em SaaS.
Pedir uma demonstração →

Como medir se está a funcionar?

Os números que os fornecedores mostram, como testes gerados ou cobertura alcançada, medem atividade. Para saber se a equipa ganhou tempo e qualidade, meça outra coisa.

Manutenção: horas por sprint. Tempo gasto a corrigir scripts. É o indicador que deve descer primeiro.
Ruído: falsas falhas por execução. Falhas que não correspondem a nenhum defeito da aplicação. Quanto menos, mais a equipa confia nos resultados.
Rapidez: tempo até ao resultado. Do commit ao relatório de testes. Mostra se a QA acompanha o ritmo de entrega.
Qualidade: defeitos escapados. Defeitos encontrados em produção que os testes deviam ter apanhado. É o indicador que decide se o resto valeu a pena.

Registe os quatro valores antes de começar. Sem linha de base, qualquer melhoria é uma opinião.

Explicámos o que muda na forma de trabalhar de uma equipa neste artigo sobre testes assistidos por IA. Para montar um piloto com um critério de sucesso claro, veja o nosso guia sobre como fazer um piloto de automação de QA em oito semanas.

Como preparar os requisitos para testes com IA?

A qualidade dos testes gerados depende da qualidade dos requisitos. Um requisito vago produz um teste vago, que passa sempre e não prova nada. Antes de ligar qualquer ferramenta, vale a pena rever a área escolhida para o primeiro passo.

  • Cada requisito tem um identificador único. É o que permite ligar o requisito ao teste, à execução e ao resultado. Sem identificador, a rastreabilidade perde-se no primeiro ciclo.
  • Os critérios de aceitação estão escritos. O que tem de acontecer para o requisito estar cumprido, em frases verificáveis. Por exemplo: o utilizador recebe uma mensagem de erro quando o IBAN tem menos de 25 caracteres.
  • Há exemplos concretos. Valores de entrada e resultados esperados. Os exemplos ajudam a IA a gerar casos de fronteira em vez de repetir o caso mais óbvio.
  • A linguagem é consistente. O mesmo conceito com o mesmo nome em todos os requisitos. Cliente, utilizador e titular não são sinónimos para uma máquina.
  • Os requisitos obsoletos estão marcados. Um requisito que já não se aplica gera testes que falham por boas razões e consomem tempo de análise.

Esta revisão tem valor mesmo sem IA. Equipas que a fazem antes de um piloto descobrem muitas vezes lacunas que explicavam defeitos antigos.

Como encaixam os testes com IA no processo que a equipa já usa?

Uma ferramenta de testes com IA não deve obrigar a equipa a mudar de processo. Deve entrar no que já existe.

Requisitos: onde já estão. A ferramenta lê os requisitos no Jira, no ALM ou no Confluence. Ninguém os copia para outro sítio.
Código de teste: na framework atual. Os testes são gerados em Selenium, Cypress, Playwright ou Robot Framework e ficam no repositório da equipa, como código normal.
Execução: no pipeline existente. Os testes correm no mesmo pipeline de integração contínua, a cada alteração ou em execuções noturnas.
Aprovação: uma fila de revisão. As alterações propostas pela IA aparecem numa fila. A equipa aprova, rejeita ou corrige. Cada decisão fica registada.

Se uma ferramenta exige um formato próprio de testes ou um ambiente de execução fechado, a equipa fica dependente dela. Escolha uma que produza código que a equipa consiga manter sozinha.

Que riscos têm os testes com IA e como se reduzem?

  • Testes que confirmam o erro. Se a IA gera testes a partir do comportamento atual da aplicação, um defeito passa a ser o resultado esperado. Gere a partir dos requisitos, não do código.
  • Asserções fracas. Um teste que só verifica que a página carregou não testa a regra de negócio. Reveja as asserções nos primeiros ciclos, até a equipa confiar no padrão.
  • Dados sensíveis nos pedidos. Requisitos e dados de teste podem conter informação de clientes. Em setores regulados, a implementação on-premise ou em cloud privada evita que essa informação saia do perímetro.
  • Confiança excessiva. Uma suíte que cresce sozinha dá uma falsa sensação de cobertura. A métrica que importa continua a ser os defeitos escapados.

Nenhum destes riscos é razão para evitar os testes com IA. Cada um é uma razão para manter uma pessoa no processo e medir a coisa certa desde o primeiro sprint.

O que dizer à equipa antes de começar?

A adoção de testes com IA corre melhor quando a equipa percebe desde o primeiro dia o que muda no seu trabalho. A dúvida mais comum não é técnica. É saber se a ferramenta vem substituir pessoas.

  • O que a IA faz. Propõe testes, correções e classificações de falhas. Não aprova nada sozinha.
  • O que a equipa decide. O que entra na suíte, o que se testa primeiro e quando um resultado é aceitável.
  • Como se mede o sucesso. Com as quatro métricas acima, partilhadas com a equipa desde a linha de base.
  • Para onde vai o tempo poupado. Para testes exploratórios, cenários complexos e estratégia, que são o trabalho que a equipa raramente tem tempo de fazer.

Dizer isto com clareza no início evita resistências mais tarde. As equipas que veem a ferramenta como um colega que trata do trabalho repetitivo usam a fila de revisão. As que a veem como uma ameaça ignoram-na.

Perguntas frequentes

Testes com IA

O que são testes com IA?
São testes de software em que modelos de IA ajudam a gerar casos de teste a partir de requisitos, a manter scripts quando a aplicação muda, a classificar falhas e a identificar lacunas de cobertura. A decisão sobre o que testar e o que aprovar continua a ser da equipa.
Os testes com IA substituem os engenheiros de QA?
Não. Retiram trabalho repetitivo de manutenção e triagem. O tempo libertado vai para estratégia de testes, testes exploratórios e cenários complexos, que dependem de conhecimento do negócio.
Por onde deve uma equipa começar?
Pela regressão sobre requisitos estáveis e pela manutenção dos scripts existentes. São as tarefas com menor risco e com ganho mais fácil de medir. A geração de novos cenários em escala deve vir depois.

Self-healing e governação

O self-healing é seguro?
É seguro quando corrige mudanças de forma, como seletores ou identificadores. Cada correção também tem de ficar registada. Correções que alteram o fluxo ou o resultado esperado de um teste devem passar por revisão humana.
Os testes com IA funcionam em setores regulados?
Funcionam se a ferramenta permitir implementação on-premise ou em cloud privada, se registar cada alteração e se produzir evidência rastreável do requisito ao resultado. Sem isso, o ganho de tempo cria um problema de auditoria.
Os requisitos têm de estar num formato especial?
Não. Têm de estar escritos com clareza, com identificador único, critérios de aceitação verificáveis e, sempre que possível, exemplos. Podem continuar no Jira, no ALM ou no Confluence.
Os testes gerados ficam presos à ferramenta?
Depende da ferramenta. No Qualiagentic, os testes são código normal em Selenium, Cypress, Playwright ou Robot Framework e ficam no repositório da equipa, sem runtime proprietário.
Quanto tempo leva até a equipa notar diferença?
Os primeiros sinais aparecem na manutenção, quando as correções de seletores deixam de ser feitas à mão. Para medir com rigor, compare as horas de manutenção por sprint com a linha de base durante pelo menos algumas releases seguidas.
Caixa Mágica Software, the company behind Qualiagentic
Equipa Caixa Mágica
A Caixa Mágica Software é uma empresa portuguesa de software com mais de 20 anos de experiência em software à medida e IA aplicada. Desenvolve o Qualiagentic, uma plataforma de IA agêntica para equipas de qualidade de software.
Qualiagentic · Caixa Mágica Software
IA para a função de qualidade, não para um engenheiro de cada vez
O Qualiagentic lê requisitos, gera testes para Selenium, Cypress, Playwright e Robot Framework, executa-os e mantém a suíte com aprovação humana. Cada passo fica registado, do requisito ao resultado arquivado.