O que é memory leak?

Um memory leak ocorre quando objetos que não deveriam mais ser usados continuam referenciados e não podem ser liberados pelo coletor de lixo. Em aplicações Java, o efeito pode ser crescimento contínuo do heap, pausas maiores de garbage collection, queda de throughput e, em casos extremos, OutOfMemoryError.

Como aparece nos testes?

No teste de resistência, o sinal típico é degradação progressiva durante uma carga estável. A análise precisa observar heap, garbage collection, classes, threads e comportamento da aplicação ao longo do tempo. O teste identifica o padrão; a confirmação da referência retida exige ferramentas de profiling e acesso técnico ao ambiente.

Como investigar?

Monitore o crescimento do heap durante o soak test. Se o heap cresce sem estabilizar mesmo com carga constante, há indício de memory leak. Heap dumps e ferramentas como VisualVM ou MAT permitem identificar quais classes estão retendo memória.


Próximo passo: inclua monitoramento de heap e GC no próximo teste de resistência e observe o crescimento ao longo do tempo.