Defeito barato é defeito cedo
Um problema encontrado no refinamento custa uma conversa. O mesmo problema em produção custa retrabalho, suporte, reputação e às vezes clientes.
Software Quality Engineer
Mais de 8 anos construindo qualidade de software em ambientes ágeis de alta escala: estruturando áreas de QA do zero, desenvolvendo software com ênfase em qualidade, liderando equipes e aplicando Inteligência Artificial à engenharia de testes.
Curitiba · PR · Brasil

A maioria dos softwares é construída primeiro e testada depois. Aqui, o caminho é o inverso: cada funcionalidade é pensada a partir de como pode falhar, antes da primeira linha de código. O resultado são entregas que chegam prontas, com menos retrabalho, menos surpresas e mais confiança para evoluir.
Para empresas, isso significa qualidade estruturada como parte da engenharia: processos sólidos, governança e times que entregam mais rápido sem abrir mão da estabilidade. Um trabalho potencializado por Inteligência Artificial (GenAI, LLM e MCP), que automatiza análises e acelera a criação de cenários de teste.
Para quem está tirando uma ideia do papel, significa desenvolvimento conduzido por um especialista em qualidade, com tranquilidade também depois da entrega. Projetos que nascem bem elaborados, acessíveis, seguros e fáceis de manter, porque são pensados desde o início por quem sabe onde o software costuma quebrar.
Um QA não está ali só para encontrar bugs. Está para evitar que eles nasçam, dar confiança para o time entregar e garantir que o software resolve o problema de quem usa.
Um problema encontrado no refinamento custa uma conversa. O mesmo problema em produção custa retrabalho, suporte, reputação e às vezes clientes.
Qualidade não freia o time. Com testes confiáveis e critérios claros, o time entrega mais rápido porque para de apagar incêndio.
O QA questiona o que ninguém perguntou: e se o usuário fizer diferente? E se a rede cair? E se o dado vier vazio? É aí que moram os bugs.
Métricas de qualidade mostram onde está o risco real, e transformam a pergunta “está pronto para subir?” em algo objetivo.
Software entregue com altíssima qualidade: estratégia de testes, cultura de qualidade no time e testes bem implementados, do planejamento à produção.
Evolução de frameworks internos com GenAI, LLM e MCP para gerar cenários, planos de teste e validações automatizadas com agentes inteligentes.
Testes que rodam sozinhos, sem interação humana, sempre que o software muda. O ganho: erros encontrados em minutos, entregas mais rápidas e a segurança de que o que já funcionava continua funcionando.
Testes integrados ao pipeline de entrega: cada alteração é verificada automaticamente antes de ir para o ar, com relatórios que mostram a saúde do software e a evolução da qualidade ao longo do tempo.
Qualidade não é uma fase no fim do projeto. É uma forma de construir software, do primeiro rascunho da ideia até o acompanhamento em produção. Este é o método aplicado no dia a dia dos times.
Shift Left é trazer os testes para a esquerda da linha do tempo, ou seja, para o começo. Em vez de testar só quando tudo está pronto, a qualidade participa da descoberta, do refinamento e do desenvolvimento. Os problemas aparecem quando ainda são baratos de resolver.
Modelo tradicional
Testes concentrados no fim. Bugs chegam tarde, com mais retrabalho.
Shift Left
Qualidade presente em todas as fases, mais forte no começo, onde evita mais custo.
A pirâmide de testes organiza a estratégia de automação: muitos testes rápidos e baratos na base, e poucos testes lentos e caros no topo. Assim o feedback é rápido e a suíte continua estável.
+ testes exploratórios em todas as camadas
Poucos e valiosos. Cobrem as jornadas críticas do usuário de ponta a ponta, com Cypress ou Playwright.
Validam contratos, regras de negócio e a conversa entre serviços. Rápidos e muito estáveis.
A base: muitos, rápidos e baratos. Dão feedback em segundos para quem está desenvolvendo.
Heurísticas são regras práticas, nascidas da experiência, que guiam o que testar e onde olhar. Não garantem que tudo será encontrado, mas tornam o teste exploratório mais rápido, mais completo e menos dependente da sorte.
Estrutura, Função, Dados, Plataforma, Operações e Tempo: um roteiro para não esquecer nenhuma dimensão do produto.
Os bugs gostam das bordas: o mínimo, o máximo, um a menos e um a mais.
Agrupar entradas que se comportam igual e testar um representante de cada grupo, sem repetir esforço.
Criar, ler, atualizar e apagar: cada dado precisa sobreviver ao ciclo de vida completo.
Lista vazia, um item só e milhares de itens costumam revelar comportamentos bem diferentes.
Voltar no navegador, perder a conexão, clicar duas vezes, sessão expirada: o mundo real não segue o caminho feliz.
Não existe um teste que cubra tudo. A combinação certa é escolhida conforme o risco, o momento do produto e o tempo disponível.
O sistema faz o que deveria fazer?
O que já funcionava continua funcionando?
O essencial está de pé depois do deploy?
Investigação guiada por heurísticas e curiosidade.
As partes conversam bem entre si?
Contratos, status, regras e dados das APIs.
A jornada completa, como o usuário vive.
Como o sistema se comporta sob volume, com K6.
É claro e simples para quem usa?
Telas, gestos e condições de rede do celular.
Boa parte dos bugs nasce de um mal-entendido, não de código. Por isso o trabalho é lado a lado com a pessoa de produto: quanto mais cedo todos se entendem, menos defeito chega no usuário.
“Qualidade é uma conversa contínua entre quem pensa, quem constrói e quem testa.”
Toda melhoria começa por um diagnóstico. As métricas são extraídas antes de aplicar qualquer quality gate e comparadas com o depois. Assim o ganho de qualidade fica visível para o time e para a liderança, sem achismo.
Antes
Antes de mudar qualquer processo, as métricas atuais do time são extraídas. Sem esse retrato, não dá para provar que algo melhorou.
Durante
Com o diagnóstico em mãos, os gates são definidos onde o risco é maior, acompanhando a adoção pelas squads.
Depois
Antes e depois comparados com os mesmos indicadores, resultado apresentado ao time e ajustes no que não trouxe ganho.
Quality gates são pontos de verificação no caminho até a produção. Cada um tem critérios objetivos: se não forem atendidos, a entrega não avança. Isso tira a qualidade do campo da opinião e coloca no processo.
Gate 1
Código
Lint, build e testes unitários
Gate 2
Integração
Testes de API e contratos
Gate 3
Smoke E2E
Jornadas críticas no pipeline
Gate 4
Release
Regressão e critérios de aceite
Mapeamento dos riscos do produto e das métricas atuais.
Definição, com o time e com produto, de critérios objetivos: o que bloqueia e o que só alerta.
Automação dos gates no pipeline de CI/CD, com Argo Workflows.
Publicação dos resultados em relatórios (Allure, Cypress Cloud) visíveis para todos.
Revisão periódica dos gates, para que continuem úteis, e não burocráticos.
Automatizar não é gravar cliques. É escrever código de teste com o mesmo cuidado do código de produção: legível, reutilizável e fácil de manter. Para isso, o padrão Page Objects é usado com Cypress e Playwright.
Cada tela vira uma classe com seus elementos e ações. O teste descreve o que o usuário faz, e a página sabe como fazer.
Mudou um botão? O ajuste é feito em um ponto só e todos os testes que usam aquela tela continuam funcionando.
A suíte roda a cada entrega no CI/CD, com relatórios no Allure e no Cypress Cloud.
// pages/LoginPage.ts
export class LoginPage {
constructor(private page: Page) {}
email = () => this.page.getByLabel("E-mail");
senha = () => this.page.getByLabel("Senha");
entrar = () => this.page.getByRole("button", { name: "Entrar" });
async login(email: string, senha: string) {
await this.email().fill(email);
await this.senha().fill(senha);
await this.entrar().click();
}
}
// tests/login.spec.ts
test("usuário acessa o painel", async ({ page }) => {
const login = new LoginPage(page);
await page.goto("/login");
await login.login("qa@empresa.com", "********");
await expect(page).toHaveURL(/painel/);
});Um QA sozinho não garante qualidade, e nem deveria. Qualidade de verdade acontece quando produto, design, desenvolvimento e liderança compartilham o mesmo critério do que é "pronto". O papel do engenheiro de qualidade é espalhar esse conhecimento pelo time, até que a qualidade deixe de depender de uma pessoa.
Modelo tradicional
A qualidade fica com uma pessoa, e vira gargalo no fim do processo.
Cultura de qualidade
Cada papel assume sua parte, e o QA atua como referência e multiplicador.
Desenvolvedor Front-end · Freelancer
Consultor de Qualidade de Software
QA Lead
QA Sênior
QA Analyst
QA Analyst
QA Analyst
Para times: estruturar ou elevar a qualidade do que já está em produção.
Para quem tem uma ideia: tirar o projeto do papel com quem sabe onde o software costuma quebrar, do primeiro rascunho à publicação.