Halloween 2018! Software Testing needs a Silver Bullet
Software is like a werewolf, normally it looks very nice until the full moon comes out and it transforms to be a monster. The full moon happens when the software hits to a critical bug in the production. If a werewolf is only to kill someone whom it is facing with, a werewolf-like bug damages all what it hits to. We have been a witness for the kind of like damages, for example: ….
Software Testing is expected to have a silver bullet to prevent this monster comes true. The more testing invested recently with a hope to stop all germs before they will spread out in the production. Unfortunately, as a life nature, software engineering evolves itself to be adapted with new trends. For example, we have traveled across technologies from standalone application to web application to IoT application and now being AI application, these changes accelerate the software engineering transformation that moving from waterfall to RUP to Agile/Scrum and DevOps,… Software testing, nowadays, must be taken in very different forms. Especially, in this AI/ML era, when the software is a human-like. It is longer acting with given scripts which described in its predefined requirement documents like in the past. Right now, the software interacts with people with a sense of human. As a result, software testing is more and harder in its approach. Werewolf-like bugs become more unpredictable and harder to be identified. Software testers with conventional skills and tools find themselves harder to adapt to new changes. They usually let terrible monsters escaped from their traps when they believe that their traps were big enough to catch all. Now, it’s time to have a new weapon. Context-Driven Testing (CDT) in general or Exploratory Testing in particularly appears as a perfect replacement. CDT doesn’t emphasize pre-planning, pre-defining all scripts of the software, instead, it advocates an approach in favor of just-in-time response, flexibility, and creativity. To use this new weapon effectively, it requires testers must excel at their thinking, recognize right heuristics to employ them into the right context. We cannot say that CDT is the best, time to answer this. But at this moment, it would play an essential part of skills and tools for all testers.
“Iron sharpens iron” – when smart software arises, it’s time for software testing to use this own smart software to test the other smart ones. AI/ML testing software becomes an effective assistant for all testers. Using CDT along with this assistant is like two perfect pieces to create a bullet silver at this moment. Let’s imagine a prospect when a tester uses context-driven approach and commands his army including a set of “robot” testers to test for another robot just like Sophia. This sounds interesting. Some organizations bring this prospect comes closer. Shinobi (at MeU Solutions) is an example. Shinobi operates as a virtual tester to collect all relevant data, performs analysis and suggests new test ideas which can be missed from testers. The details of this product will be soon published in other articles at MeU Solutions Blog
Future is unpredictable, the best way to predict the future is to invent it. There is no silver bullet that can be used forever for software testing. Only one silver bullet is that keep learning to invent new for tomorrow.