Skip to main content

Exploratory Testing

In Turkish
Keşif Testi
Pronunciation
ik-SPLOR-uh-tor-ee TEST-ing
Updated 2 min read

Share this page

Send the link, quote the definition with a link back, or show it as a card on your own site.

https://softwaredictionary.org/terms/exploratory-testing

In short

Exploratory testing is a hands-on approach in which a tester learns about the software, designs tests, and runs them at once, guided by what they discover.

What is exploratory testing?

Exploratory testing is a style of manual testing in which learning, test design, and test execution happen together. Instead of following a script written in advance, the tester investigates the software like a detective, using what each step reveals to decide what to try next. The term was coined by Cem Kaner in the 1980s and later developed by testers such as James Bach.

Exploratory testing is usually organized into timeboxed sessions of about 60 to 90 minutes, each guided by a charter: a short mission such as exploring the checkout with expired and foreign credit cards to discover payment errors. During the session the tester notes what they tried, the bugs they found, open questions, and risks, then reviews the results with the team afterward. Testing heuristics, rules of thumb for generating ideas, help cover ground: boundary values, interruptions like losing the network mid-upload, unusual sequences like double-clicking a submit button, different user roles, and accessibility.

It's like exploring a new city on foot instead of riding the tour bus: you notice odd side streets that the fixed route never visits. Teams use exploratory testing on new features before automation exists, on risky or complex areas, and to find usability problems and bugs that no one thought to write an automated check for. Important findings are often turned into new automated regression tests.

Exploratory testing is often confused with ad hoc testing, which means poking at the software at random without a goal or notes; exploratory testing is structured by charters, timeboxes, and written findings. It also differs from scripted manual testing, which fixes every step and expected result in advance to confirm known behavior, while exploration looks for unknown problems. Automated tests check what you already know should work, and exploratory testing finds what you didn't know to check.

Key takeaways

  • The tester designs and runs tests at the same time, adapting as they learn.
  • Sessions are timeboxed and guided by a written charter.
  • Notes on bugs, questions, and risks are shared in a short debrief.
  • It finds unknown problems that scripted and automated tests miss.
  • It is structured, which distinguishes it from random ad hoc testing.

Example

A session charter and notestext
Charter: Explore the checkout with unusual payment situations
         to discover errors, confusing messages, and double charges.
Timebox: 60 minutes    Tester: Priya    Build: 2026.09.28-rc1

Ideas to try:
  - Expired card, card from another country, card with a zero balance
  - Lose the network connection right after pressing "Pay"
  - Press "Pay" twice quickly; use the browser's back button mid-payment

Notes:
  - BUG: Double-clicking "Pay" creates two orders (logged as #4812)
  - QUESTION: Expired cards show "Unknown error". Is that intended?

Readers ask

Is exploratory testing the same as manual testing?

Exploratory testing is one kind of manual testing. Manual testing also includes scripted testing, where a person follows predefined steps and compares the results with expected outcomes.

What is a test charter?

A test charter is a short statement of what an exploratory session should investigate and why, for example which feature to explore, with which resources, to discover which kind of problem. It gives the session focus without dictating each step.

See also

Spotted a mistake or something missing on this page?Suggest an edit

Read a random page
Open today's review
Switch to the dark theme
Read this page in Türkçe

More

Settings