Testes exploratórios requerem uma combinação de conhecimento, experiência e habilidades para testar o software de uma forma investigativa não linear.
Quando testadores usam seus conhecimentos empíricos para fazer os testes, estes são baseados em experiências. Quando tal teste é não linear e investigativo, pode chamá-lo de exploratório. A maior parte das equipes de testes utilizam o teste exploratório, mais do que qualquer outro método. É uma forma de validação que permite que o testador coloque em prática todo seu conhecimento e experiência. Em contraste com outros métodos de testes, que avaliam o software com base em padrões determinados.
Boatos afirmam que o teste exploratório surgiu na década de 90 no Vale do Silício, mas o método provavelmente foi criado por alguém através de tentativas e erros. Esse tipo de teste é comumente utilizado por empresas sem contato com testes mais elaborados. Inevitavelmente as organizações tomam consciência de que apenas o teste exploratório é insuficiente para atender às demandas reais de testes.
Os resultados dos testes exploratórios dependem dos testadores e seu know-how ou a falta dele. Pesquisas apontam que os bugs encontrados nos testes exploratórios são em grande maioria diferentes dos encontrados em outros tipos de testes. Essa diferença significativa é fruto de uma estratégia madura para os testes que envolvem automação, scripts bem regidos, além das ferramentas corretas. Criar um escopo de teste bem definido é um sinal de uma rotina de testes fácil de se manejar e direcionar.
Entretanto, há de se levar em consideração que nenhuma estratégia de testes alcançará 100% de detecção de bugs, visto que nenhum código é perfeito. Com isso, testes exploratórios e outras técnicas reativas são úteis em diversos cenários, já que existe essa imperfeição. Em projetos ágeis especificamente, as mudanças constantes casam perfeitamente com estratégias reativas. Feitos corretamente, os testes exploratórios são importantes para uma rotina de sucesso, mas ainda sim, continuam sendo apenas mais um item.