Close

Teste exploratório

Saiba o que são testes exploratórios e sua história. Descubra os prós e os contras dos testes exploratórios, como diferem dos testes com script e o contexto apropriado para seu uso.

Foto de rosto de Deepak Parmar
Deepak Parmar

Autor colaborador


Testes exploratórios é a abordagem para testes de software que, com frequência, é descrita como aprendizagem simultânea, design de teste e execução. O foco está na descoberta e depende da orientação do testador individual para descobrir defeitos que não são abrangidos com facilidade no escopo de outros testes.

A prática de testes exploratórios ganhou impulso nos últimos anos. Testadores e gerentes de controle de qualidade são incentivados a incluir testes exploratórios como parte de uma estratégia abrangente de cobertura de teste.

História dos testes exploratórios


Testes exploratórios existem há algum tempo, mas muitas vezes eram chamados de “testes ad-hoc”. O termo "testes exploratórios" foi introduzido de maneira formal pelo especialista em testes de software Cem Kaner em seu clássico livro, Testing Computer Software.

A introdução agora é famosa: "Não importa quantos casos de teste de quantos tipos você criou, você vai ficar sem testes com planejamento formal. Você pode continuar testando. Execute novos testes conforme você pensa neles, sem gastar muito tempo preparando ou explicando os testes. Confie em seus instintos."

Por que usar testes exploratórios

Hoje em dia, as equipes precisam adotar a integração contínua e atender à demanda do mercado de experiências digitais de qualidade para atender às crescentes expectativas dos clientes. Embora a velocidade de entrada no mercado seja importante, existem casos de bugs de milhões de dólares ou desastres simples na experiência do usuário que são muito caros. Da Boeing ao Instagram, há muitos exemplos em que a pressa em entregar no prazo e os testes de baixa qualidade levaram a danos financeiros e de reputação.

A maioria dos testes de qualidade de software usa uma abordagem estruturada. Os casos de teste são definidos com base em histórias de usuário já definidas e os dados de teste são estruturados com base nos casos de teste definidos. A cobertura do teste é medida usando métricas de engenharia de software e, na maioria dos casos, a cobertura é adequada do ponto de vista técnico.


Teams today need to adopt continuous integration and deliver on the market demand of quality digital experiences to meet rising customer expectations. While speed to market is important,  there are instances of million-dollar bugs or simple user experience disasters that are very costly. From Boeing to Instagram, there are plenty of examples where the rush to deliver on deadline and poor-quality testing led to reputational and financial damage. 

Most software quality testing uses a structured approach. Test cases are defined based on already defined user stories and the test data is structured based on the test cases defined. Test coverage is measured using software engineering metrics and, in most cases, the coverage is adequate technically. 

Ver solução

Crie e opere softwares com o Open DevOps

Material relacionado

Testes automatizados para DevOps

No geral, o que faltam são casos extremos, que são descobertos por meio do Teste de Aceitação do Usuário (UAT) e são testados com base nas personas dos usuários. Por outro lado, testes exploratórios são aleatórios ou não estruturados por natureza e podem revelar bugs que não seriam descobertos durante a fase estruturada de testes.

Com testes exploratórios, os testadores podem brincar com uma história do usuário que segue uma determinada sequência. Os testadores podem anotar defeitos, adicionar afirmações e memos de voz e criar documentação em tempo real. É assim que uma história do usuário é convertida em um caso de teste. Essas informações também podem ser usadas para QA.

Na verdade, a execução do teste é implementada sem criar etapas de teste formais. A ferramenta de testes exploratórios torna-se então um precursor da automação. Ajuda a formalizar as descobertas e fazer a documentação automática. Com a ajuda de feedback visual e ferramentas de teste colaborativo, todos podem participar de testes exploratórios. Assim, as equipes podem reagir e se adaptar às mudanças com rapidez, facilitando um fluxo de trabalho ágil.

Além disso, o testador pode converter sequências de testes exploratórios em scripts de teste funcionais usando ferramentas para documentação automatizada de casos de teste. Esse fato reforça o processo de testes tradicional.

Com a integração com ferramentas como o Jira e produtos de gerenciamento de teste, as equipes podem exportar a documentação registrada direto para casos de teste.

Assim, os testes exploratórios aceleram a documentação, facilitam os testes unitários e ajudam a criar um ciclo de feedback instantâneo. Como afirma James Bach, cofundador da Escola de Teste de Software Orientada ao Contexto, “os testes exploratórios incentivam o pensamento científico em tempo real”.

Quando você deve usar testes exploratórios?

Testes exploratórios são adequados para cenários de teste específicos, como quando alguém precisa aprender sobre um produto ou aplicativo com rapidez e fornecer feedback rápido. Eles ajudam a avaliar a qualidade de um produto desde uma perspectiva do usuário.

Em muitos ciclos de software, uma iteração inicial é necessária quando as equipes não têm muito tempo para estruturar os testes. Testes exploratórios são bastante úteis neste cenário.

Ao testar aplicativos de missão crítica, o teste exploratório garante que você não perca casos extremos que levam a falhas críticas de qualidade. Além disso, use testes exploratórios para auxiliar no processo de teste de unidade, documente as etapas e use essas informações para testar com amplitude durante sprints posteriores.

É especialmente útil ao encontrar novos cenários de teste para aprimorar a cobertura do teste.


Exploratory testing is suited for specific testing scenarios, such as when someone needs to learn about a product or application quickly and provide rapid feedback. It helps review the quality of a product from a user perspective.  

In many software cycles, an early iteration is required when teams don’t have much time to structure the tests. Exploratory testing is quite helpful in this scenario.  

When testing mission-critical applications, exploratory testing ensures you don’t miss edge cases that lead to critical quality failures. Plus, use exploratory testing to aid unit test process, document the steps and use that information to test extensively during later sprints. 

It is especially useful to find new test scenarios to enhance the test coverage. 

Quando dizer não aos testes exploratórios

As organizações devem ser capazes de atingir o equilíbrio certo entre o teste exploratório e o teste com script. Testes exploratórios por si só não podem oferecer cobertura adequada, e as equipes não devem tentar, a menos que tenham atingido alguns marcos iniciais.

Especialmente com qualquer tipo de teste regulamentado ou baseado em conformidade, o teste com script é o caminho a percorrer. Em testes baseados em conformidade, em que certas checklists e mandatos precisam ser seguidos por motivos legais, é aconselhável seguir os testes com script. Um exemplo disso é o teste de acessibilidade, em que várias leis governam o protocolo de teste e há padrões definidos que precisam ser aprovados.


Organizations must be able to strike the right balance between exploratory testing and scripted testing. Exploratory testing alone can’t offer adequate coverage and teams shouldn’t attempt it unless they have reached a few initial milestones. 

Especially with any type of testing that is regulated or compliance-based, scripted testing is the way to go. In compliance based testing, where certain checklists and mandates need to be followed for legal reasons, it is advised to stick to scripted testing. One example of this is accessibility testing where several laws govern the testing protocol and there are defined standards that need to be passed. 

Importância dos testes exploratórios para CI/CD

Testes exploratórios abrem os testes para todos os principais interessados e não apenas para os testadores treinados. Usando uma ferramenta de teste exploratório, pode-se capturar capturas de tela, gravar notas de voz e anotar feedback durante as sessões. Assim, a revisão vai ser mais rápida e eficiente e vai poder ser realizada por pessoas além do testador de software tradicional.

Os testes exploratórios complementam a estratégia de testes existente das equipes de QA. Inclui uma série de sessões de teste não documentadas para descobrir problemas/bugs ainda não descobertos. Quando combinados com testes automatizados e outras práticas de teste, aumentam a cobertura de teste, descobrem casos extremos, adicionam potencialmente novos recursos e melhoram o produto de software no geral. Sem rigidez estrutural, estimulam a experimentação, a criatividade e a descoberta nas equipes.

A natureza quase instantânea do feedback ajuda a fechar as lacunas entre testadores e desenvolvedores. Acima de tudo, os resultados dos testes exploratórios fornecem uma perspectiva orientada ao usuário e feedback para as equipes de desenvolvimento. O objetivo é complementar os testes tradicionais para encontrar defeitos de milhões de dólares que geralmente estão ocultos atrás do fluxo de trabalho definido.

Obtenha um aplicativo de gerenciamento de testes da coleção Gerenciamento de testes no Atlassian Marketplace.


Exploratory testing opens testing to all key stakeholders and not just trained testers.  Using an exploratory testing tool, one can capture screenshots, record voice memos and annotate feedback during sessions. This enables faster and more efficient review, by people beyond the traditional software tester.   

Exploratory testing complements QA teams’ existing test strategy. It comprises a series of undocumented testing sessions to discover yet unearthed issues/bugs. When combined with automated testing and other testing practices, it increases test coverage, discovers edge cases, potentially adds new features and overall improves the software product. With no structural rigidity, it encourages experimentation, creativity and discovery within the teams. 

The almost instantaneous nature of feedback helps close the gaps between testers and developers. Above all, the results of exploratory testing provide a user-oriented perspective and feedback to the development teams.  The goal is to complement traditional testing to find million-dollar defects that are generally hidden behind the defined workflow.  

Get a test management app from the Test Management collection on the Atlassian Marketplace.  

Deepak Parmar
Deepak Parmar

I’ve lived and breathed QA for the last decade now through my experience of working with leading QA services and product companies. I’m currently the head of Marketing and Partnerships at QMetry, bringing with me 20 years of experience in the IT industry, which has instilled in me the strong belief in improving customer delight through software quality.


Compartilhe este artigo

Leitura recomendada

Marque esses recursos para aprender sobre os tipos de equipes de DevOps ou para obter atualizações contínuas sobre DevOps na Atlassian.

Ilustração DevOps

Comunidade de DevOps

Ilustração DevOps

Leia o blog

Ilustração do mapa

Comece gratuitamente

Inscreva-se para receber a newsletter de DevOps

Thank you for signing up