Formal vs informal testing

What is meant to be a formal and informal testing ?
Where in your opinion exploratory testing falls?

I have just heard that exploratory testing is formal as hell and people wrongly consider it informal.
I have always considered it as informal too…

1 Like

That depends, how do you classify them first?

1 Like

I would discourage using formal and informal in this context.
For starters, all testing is exploratory, to some extent.
Formal x Informal may seem that the former is Professional and the later is Unprofessional.

The point would be how much you want to limit your search space while exploring.

If your testing mission is to assess the product under a very particular, well-known simple situation, your search space would be tiny: You probably will do a specific product setup, exercise a special operation, and use straightforward oracles to evaluate your product.

On the other hand, e.g., if you are doing a product coverage outline from zero, you will have a wider search space: You will have you have to come up with product setups on the fly, discover operations while testing, and use multiple unreliable oracles to evaluate your product.

Both extreme situations are perfectly valid for the testing missions they faced.
A good professional tester will know when to use one or another.


They are generally not words I’d use in testing, as others mention you would need to explain what you mean by those terms and the strengths and weakness of them.

Exploratory testing did in the distant past sometimes got mislabeled as adhoc or on the fly testing to the extent that some extremely naive people thought it was just about clickety clackity bashing the keyboard.

Good exploratory testing is generally planned to some extent with specific risks or features planned to investigate alongside some mental design of testing techniques. The book Explore IT is a great reference point for this sort of thing.

It also though has a massive experience bias, for example I sometimes write down charters if there are stakeholder interested in my test coverage but most of the time the charters are in my head based on experience.

Experience based things often blur the lines between formal and informal, unnatural and natural, when you are testing your 500th app or website a lot of the testing is second nature so it appears as informal but without a doubt that brain is always clicking away regardless.


My experience that the usage of terms like informal and formal or structured and unstructured is typically to push some agenda or another. Like exploratory testing is bad I want everyone to buy my certification so therefore I will say that exploratory is unstructured / informal / bad. If you want to discuss formality in testing I would make an argument that if you have someone who is inexperienced it can be beneficial to add some formality or restrict and guide the testing efforts. But I think you should always aim to allow you testers to use their own judgement and develop their own methods if they have the skills and experience for it.