I’m going to explain it through an analogy.
Many things can be better explained with analogies. An analogy is a comparison of different entities – people, objects, concepts, actions, or experiences and functions as a figure of speech. So, nothing better than making an analogy to explain it.
First, you will get the recipe and, before start cooking, you will read it, see if you have all the ingredients, and try to understand how is the process.
When you’re cooking, you are thinking about it before you can start: you think about the ingredients and how you will start the process. So you create a plan.
After that, when the plan ready, you start to put it into practice. You will mix the ingredients, add the spices, and constantly taste what you are cooking to know if everything is according to your and others’ taste until it’s ready.
Now you have a final result, which is also put to the test and where you can say that you have completely achieved your goal.
The start point when you test something it’s not about the action, it’s about to understand what you will do. When you are reading the recipe your reading a requirement and if it’s not understandable, you will try to add a sharing understanding double-check the recipe or even talk with someone to get more clarification.
The plan, instead of getting the correct ingredients and kitchenware, you will set up the environments, data, and choose the proper testing techniques.
Now it’s time for testing. You will be testing all the time until you (of course your team) think it is good and ready to deliver.
The end process (the dish is ready) might be related to the testing in production, observability, and user feedback.
Whether you agree or not, I challenge you to do the same: write on a blog post what “testing is…” for you