More on Stochastic Testing
We have referred to Stochastic Testing in an earlier blog post as an exploratory technique. We provide a Google definition of exploration below:
Exploration – the action of traveling in or through an unfamiliar area in order to learn about it.
Stochastic testing is not compliance testing (requirements) even though we are exercising the product features to the requirements. It is not extreme testing in that we are not pushing the limits of the stimuli upon the product. Neither do we apply a combination of stimuli to the product, so referring to it as a combinatorial testing is inappropriate. Neither is it attack mode testing. We are in fact exploring the software structure, the interactions between the software modules via multiple and various routes. We are learning how the software module interactions or sequence of states the software product may undergo in the real world impact performance. We are looking for unintended consequences in our software such as semaphore handling, interrupt handling, or specific register handling (UART enabling etc.). We are looking for anomalies but we cannot say the specific symptom nor the specific causal events or dependencies. We are therefore employing a technique best described as exploratory. Even if we have automated this testing (and we should), we are exploring nevertheless, and in a very efficient manner. In fact, we can make use of our automation of our compliance testing, recycling it to perform some of this stochastic testing. With an existing array of test cases, we can assign numeric designators employ a “random number generator” in the context of those test cases, and have random sequences of the test case. The random number generator is set up from 1 to n (the total number of test cases automated). Each test case has a numeric identifier and the random number generator is the pointer to the test case that will be conducted. In this way we randomly exercise the product using our regression suite as the core, freeing the time up for our thinking talent to push the product as they see fit.
As an aside, hops, used to make beer, is transported via burlap bags. In that context there is indeed a connection between burlap and beer.