Ir para conteúdo

Teste de carga em loja virtual: como saber se ela aguenta o dia de maior venda

Corredor de mercado lotado de pessoas, representando o volume de compradores simultâneos de um dia de pico de vendas

A Black Friday de 2026 cai no dia 27 de novembro. Nas semanas que antecedem a data, boa parte das lojas virtuais faz a mesma coisa: investe em anúncio, monta a oferta, avisa a lista de e-mail e torce. Ninguém sabe de verdade se o site vai aguentar o dia em que mais gente vai tentar comprar ao mesmo tempo.

O problema é que “entrar na loja e comprar um produto para testar” não responde essa pergunta. Com uma pessoa por vez, quase todo site funciona. O que quebra, e quebra justo no dia de maior faturamento, só aparece quando muita gente chega junto.

Este artigo explica, sem jargão, o que é teste de carga, o que ele revela que o teste manual nunca revela e o que você deve perguntar para quem cuida da sua loja antes do próximo pico. No meio do caminho, mostro um caso real que executei: uma camiseta em estoque e 300 tentativas de compra no mesmo instante.

O que é teste de carga

Teste de carga é um ensaio do dia de pico, feito antes do dia de pico. Em vez de esperar o movimento real chegar, você simula muita gente usando a loja ao mesmo tempo, de forma controlada, e mede o que acontece.

A confusão mais comum é achar que o teste serve só para medir velocidade. Ele responde três perguntas diferentes:

PerguntaO que o teste mostra
A loja continua no ar?Se o site cai ou fica fora do ar quando o volume sobe.
A loja continua rápida?Se o tempo de resposta degrada a ponto de o cliente desistir.
A loja continua correta?Se as regras de negócio (estoque, preço, cupom, pedido) seguem certas quando tudo acontece junto.

As duas primeiras perguntas todo mundo lembra. A terceira é a que quase ninguém testa, e é a que mais custa caro.

Por que a loja que “funciona” falha no pico

Uma loja pode falhar de três formas no dia de maior venda:

  1. Ficar lenta. Cada página demora, o cliente desiste e o carrinho é abandonado. Esse é o problema clássico de performance web, e já falei dele em e-commerce lento: como melhorar velocidade e conversões.
  2. Cair. O site para de responder. É o pior cenário, mas pelo menos é visível: todo mundo percebe na hora.
  3. Errar em silêncio. O site continua no ar, rápido e bonito, mas aceita pedidos que não deveria. Ninguém percebe até o cliente receber um cancelamento.

O terceiro tipo é o mais perigoso justamente porque nenhum monitoramento de “site no ar” o detecta. A loja está funcionando. Só está funcionando errado.

Um caso real: 300 compras para 1 camiseta

Para mostrar o terceiro tipo de falha com número, e não com opinião, montei um caso técnico público. O cenário é simples: uma camiseta em estoque e 300 tentativas de compra ao mesmo tempo.

Construí duas versões do fechamento de pedido:

  • Versão ingênua: escrita como um tutorial comum escreveria, sem nenhum atraso artificial. Ela consulta o estoque, confere e depois baixa a quantidade, tudo em passos separados.
  • Versão correta: conferir o estoque e baixar a unidade viram um gesto só, feito um cliente por vez.

O resultado, em 1 unidade de estoque e 300 requisições simultâneas:

VersãoPedidos aceitos
IngênuaEntre 2 e 300, e nunca 1 (10 execuções registradas)
CorretaExatamente 1, em todas as execuções

Nas dez execuções da versão ingênua, o número de pedidos aceitos foi 300, 300, 300, 290, 300, 3, 300, 300, 300 e 2. O valor muda a cada rodada porque depende do instante exato em que as requisições chegam. O que não muda é que a versão ingênua nunca vendeu apenas uma camiseta.

Pense em um balcão com uma camiseta na prateleira e 300 pessoas chegando no mesmo segundo. No sistema ingênuo, o atendente olha a prateleira, confirma que tem camiseta e só depois risca uma no caderno. Como as 300 pessoas olham a prateleira antes de qualquer uma riscar o caderno, todas veem a camiseta e todas passam. No sistema correto, olhar e riscar são um gesto único. O primeiro leva a camiseta, e para os outros a prateleira já está vazia.

Esse bug funciona perfeitamente com um cliente por vez. É por isso que o teste manual jamais o encontra, e é por isso que ele aparece no pico. Você pode ver o passo a passo completo, com código e testes, no case técnico de venda duplicada de estoque.

O que o teste achou além do esperado

Um detalhe do caso mostra bem o valor de testar em ambiente limpo: ao rodar tudo numa máquina nova, o teste automatizado encontrou um defeito que o meu computador escondia. A configuração do banco de dados guardada no repositório estava incompleta, e só funcionava na minha máquina porque o ambiente local tinha sido montado antes. Sem rodar do zero, esse problema só apareceria quando outra pessoa tentasse usar o projeto.

Teste de carga, teste de velocidade e teste manual: não são a mesma coisa

Muita loja acha que está coberta porque tem alguma forma de verificação. Na prática, cada tipo de teste enxerga uma parte do problema:

Tipo de verificaçãoO que ela não percebe
Teste manual (você compra um item)Qualquer problema que só aparece com várias pessoas ao mesmo tempo.
Nota de velocidade da páginaSe o fechamento do pedido continua correto sob volume.
Monitoramento de site no arErros de regra de negócio, porque o site continua respondendo normalmente.
Teste de carga com regra de negócioSó cobre os cenários que foram escritos. O que não foi testado não está protegido.

A última linha é a mais honesta: teste de carga não é um selo de qualidade geral. Ele garante que aquelas situações específicas se sustentam, e por isso a escolha dos cenários importa tanto quanto a execução.

O que testar primeiro em uma loja virtual

Se você só tem tempo para poucos cenários, priorize os que envolvem dinheiro ou promessa ao cliente:

  • Fechamento de pedido de item com pouco estoque, que é exatamente o caso da camiseta.
  • Cupom ou promoção com quantidade limitada, porque a mesma lógica de “conferir e usar” pode ser burlada em simultâneo.
  • Confirmação de pagamento recebida mais de uma vez, já que sistemas de pagamento podem repetir o mesmo aviso e a loja precisa processá-lo uma única vez.
  • Login e cadastro em massa, porque campanha forte traz gente nova de uma vez.
  • Busca e listagem de produtos, que costumam ser as páginas mais pesadas no pico.

Não precisa testar tudo. Precisa testar o que, se der errado, vira cancelamento, reembolso ou reclamação.

O que perguntar para o seu desenvolvedor antes do pico

Essas perguntas funcionam como um filtro. Quem cuida bem da loja responde sem enrolar:

  1. Já foi feito algum teste com muitas compras simultâneas no fechamento de pedido?
  2. O que acontece se duas pessoas comprarem a última unidade no mesmo segundo?
  3. Se o aviso de pagamento chegar duas vezes, o pedido é processado duas vezes?
  4. Quanto tempo uma unidade fica reservada para quem está pagando, e o que acontece quando o tempo acaba?
  5. Existe um plano para o caso de o site ficar lento ou cair no meio de uma campanha?
  6. Quem é avisado, e como, se algo sair do esperado durante o pico?
  7. O teste roda em um ambiente limpo, ou só funciona na máquina de quem o escreveu?

Se alguma resposta for “não sei” ou “nunca testamos”, você acabou de descobrir onde está o risco. Se quiser um roteiro mais amplo de itens para cobrar do seu site, o checklist técnico que toda empresa deveria exigir do próprio site complementa este.

Quando fazer: um cronograma antes do pico

O ideal é testar com antecedência, porque corrigir o que o teste encontra leva tempo. Um cronograma realista:

  • 4 semanas antes: definir quais cenários testar, montar o ambiente de teste e rodar a primeira rodada.
  • 2 semanas antes: corrigir o que apareceu e rodar de novo. Teste que acha problema precisa ser repetido depois da correção.
  • 1 semana antes: congelar mudanças grandes no site. Qualquer alteração depois do teste invalida parte dele.
  • Na semana do pico: conferir monitoramento, alertas e quem está de plantão.
  • Depois do pico: revisar o que aconteceu de verdade e transformar cada surpresa em um novo cenário de teste.

Se faltam poucas semanas para a data, vá direto ao essencial: fechamento de pedido de itens com pouco estoque, cupom limitado e confirmação de pagamento repetida. Esses três cobrem a maior parte das perdas silenciosas.

Sinais de que sua loja está em risco

Você não precisa de um teste para desconfiar. Alguns sinais indicam que vale testar antes da próxima campanha:

  • Já houve pedido cancelado por falta de produto que o site mostrava como disponível.
  • O saldo de estoque do sistema às vezes aparece negativo ou diferente do físico.
  • A loja já ficou lenta ou instável em uma campanha anterior.
  • O mesmo produto é vendido em mais de um canal ao mesmo tempo.
  • Ninguém sabe dizer quantos pedidos simultâneos o site suporta.

Se dois ou mais se aplicam, trate o teste como prioridade, não como luxo.

O que um teste de carga não garante

Um conteúdo sério diz onde ele para de valer. No meu caso, por exemplo:

  • O teste foi feito em uma única máquina e com uma única instância da aplicação. Cenários com várias instâncias não foram testados.
  • Não afirmo que a versão correta é mais rápida. As amostras são pequenas. Afirmo apenas que a correção não deixou o sistema mais lento.
  • Uma execução inicial registrou 301 pedidos para 300 requisições. Não se repetiu em dez execuções seguintes, e a causa não foi comprovada.

O mesmo vale para a sua loja: um teste prova o que ele mediu. Se o site mudou depois, ou se o volume real passou do volume simulado, é preciso testar de novo.

Quanto custa e quem deve fazer

Não existe um preço único, porque o custo depende do tamanho da loja, de quantos fluxos precisam ser cobertos e de como o ambiente está montado. O que dá para dizer é onde o esforço realmente está: no caso que descrevi, reproduzir o teste custa R$ 0 em licenças e infraestrutura, mas o maior gasto de tempo foi montar o ambiente, não escrever o código da correção.

Compare isso com o custo de um dia de pico com pedidos cancelados, reembolsos, atendimento sobrecarregado e avaliação ruim. Para a maioria das lojas, testar custa menos do que errar uma vez.

Quem deve fazer? Alguém que entenda tanto do negócio quanto do código do checkout, porque o teste mais útil é o que simula uma regra da sua loja, e não um teste genérico. É esse tipo de trabalho que faço em projetos de desenvolvimento sob medida e na manutenção contínua de sites, seja antes de uma data de pico ou como rotina.

Perguntas frequentes sobre teste de carga

O que é teste de carga em uma loja virtual?

É a simulação controlada de muitos clientes usando a loja ao mesmo tempo, para medir se o site continua no ar, rápido e correto. Ele serve para descobrir problemas antes de o movimento real chegar.

Teste de carga é a mesma coisa que teste de velocidade?

Não. O teste de velocidade mede como uma página carrega para uma pessoa. O teste de carga mede o comportamento do sistema com muita gente ao mesmo tempo, incluindo se as regras de negócio continuam certas.

Minha loja nunca caiu. Preciso mesmo testar?

Sim, porque o erro mais caro nem derruba o site. Ele aceita pedidos a mais do que o estoque, e só aparece quando muita gente compra junto. Uma loja que nunca caiu pode nunca ter sido exposta a esse tipo de pico.

Quando é o melhor momento para fazer o teste?

Com pelo menos duas a quatro semanas de antecedência de uma data de pico, para ter tempo de corrigir e testar de novo. Se o tempo está curto, concentre-se nos cenários que envolvem estoque, cupom limitado e pagamento.

Preciso repetir o teste depois de mudar o site?

Sim. Qualquer alteração relevante no fechamento de pedido, no estoque ou na integração com pagamento pode reintroduzir o problema. Um teste vale para o site do jeito que ele estava quando foi rodado.

Como sei se meu desenvolvedor já testa isso?

Pergunte o que acontece quando duas pessoas compram a última unidade no mesmo segundo. Quem já testou responde com um resultado. Quem nunca testou costuma responder com uma suposição.

Posso reproduzir o teste do seu caso?

Sim. O código e os testes estão em um repositório público, e o passo a passo está no case técnico.

Conclusão

O dia de maior venda é o pior momento para descobrir um problema. A maioria das falhas que custam dinheiro de verdade não derruba o site, e por isso passa por qualquer verificação superficial. Elas só aparecem quando muita gente compra junto, e só um teste que simule esse cenário consegue mostrar.

Se a sua loja tem estoque limitado, cupons com quantidade, vendas em vários canais ou uma campanha forte chegando, vale rodar esse tipo de teste antes da data, não depois. Se quiser ajuda para definir os cenários e executar o teste no seu checkout, posso fazer isso como desenvolvedor freelancer: do levantamento do que pode dar errado até o resultado em número, com a correção quando for preciso. Você também pode falar comigo direto.

Referências

Leia também

Artigos Relacionados