Testing TV Series
Anyone ever heard a kid say:“When I grow up I want to be a Tester“?
I have 3 kids at home, and I’ve never heard any of them say something like that.
Up to now I’ve heard them say that when they grow up they want to be: a Doctor, a Policemen, a Firefighter, a Princess, a Veterinarian, a Dancer, a Soldier, a Bus driver, a Tractor driver, a Builder (or more specifically Bob the Builder!), they want to be Mickey Mouse, or Minnie Mouse, or Strawberry Shortcake, or Smurfette, or even Tom & Jerry…
But never have I heard them say that when they grow up they want to be a Tester.
Testing is a grey profession
I guess after all testing is what they call a “grey” profession, or something that does not sound very exciting to kids; maybe it doesn’t sound very exciting to many grown-ups either?
On the other hand, there are many other “grey” professions that have enjoyed a surge in interest after getting some bright-color-lights in TV series or Hollywood movies. For example archeology after Indiana Jones, crime-scene investigaion after CSI (NY, LV, Miami, etc), pathology after Bones and NCIS, etc.
So maybe what we need to change the way people perceived testing is to come up with a TV series describing the work and adventures of an amazing team of clever software testers…
How would a TV series about Testers look like?
Let’s imagine a chapter out of our new TV drama:
(Testing Geeks Incorporated)
Scene 1 – Intro
The phone rings in the middle of morning, while the testing team is going over a regular task in the office (to make it look cool, let’s assume they are testing a multi-player virtual reality game of sorts).
One of the guys answers the phone and on the other side of the line there is someone asking for help with a very big and important problem.
The team scrambles to the Video Conference room and start a call with their customer, the Department of Defense.
In the conference a General explains the current crisis, half their users (including under-cover agents in enemy countries!) are not able to work with their encrypted communication software and are basically in the dark.
The General even shows how, when he tries to open this program on his laptop, he gets a general error message saying the system has performed an illegal operation and will shut itself down immediately.
The situation is critical and they need the T-G-I team to get in quickly and find the bug right away!
Scene 2 – The team goes into action
Our team of testers (two guys and two girls wearing jeans, sneaker and cool t-shirts) gather their equipment in their backpacks and scramble out of the office in a hurry as a military chopper lands on the lawn in front of their office, picks them up, and takes off without even slowing down its rotors.
They land in a military base and get out running towards the General who is waiting for them in a Jeep. He greets them and drives them into a secrete facility deep within a mountain cave.
Once inside the team divides into 2 groups. Team A will make a detailed analysis of the logs and the information gathered by the IT department, trying to look for clues on the bug. At the same time Team B will take a more “holistic” approach, playing with the bug itself and talking to some of the users who are experiencing the issue.
Scene 3 – Understanding the issue
We follow the “holistic” Team B as they interview a couple of communication technicians who were the first to report the bug. They use a heuristic-guided method to question them and gather information about the system and the problem at hand.
The technicians (a couple of Army Privates in charge of processing coded messages from the Middle East) explained that it all started 2 days ago when they got into their post to start their shift and one of the guys was not able to log into his communication program, he tried everything he could think of but nothing worked.
The strange thing is that a couple of hours later, when he got back from a smoke break he tried once again, and this time he was able to log in and work with it.
Then later in the day it started happening again, but this time it happened to both of them simultaneously. And when they reported the issue to their IT it appeared that at least half the base was experiencing the same problem. Many operators and officials where not able to log into their communication platform!
Some users are not been able to connect at all, while others manage to connect sometimes.
They tried login in and out of their computers, modifying hardware, everything! Sometimes it helped for a number of minutes but then it stoped working once again. In fact, nothing makes sense to them.
Our testers ask to see one of these machines where things work intermediately. They play with it a little bit and install a service that will let them get more information. Then they ask one of the Privates to start working normally while they observe his operations from behind.
After a couple of minutes of work the error message pops up once again! But this time our testers are prepared and they move quickly to take charge of the machine.
They open the application they installed, that was gathering information on the system as the user worked, and start reviewing the activity log. After about 3 minutes one of our testers points at a specific line on the screen while the others nodes her head in agreement and smiles.
They run a couple of commands on the machine, then ask the user to try to run the program once again and “PRESTO!” The error message disappeared, while the IT guys who had been in the room all this time look in awe and disbelieve.
Scene 4 – Finding a solution
In the meantime Team A, the detailed analysis team, is gathering information about the latest upgrades installed on the system and the base. They check all maintenance logs and updates, as well as client software maintenance that have taken place in the last 72 hours.
The IT clerks report that nothing out of the ordinary was done in the last 3 days, or in the last 3 weeks for that matter. There were no major upgrades or any kind maintenance done.
As the testers start going over the routine upgrade list and cross-reference the actual components (libraries and executables) they get a call from the “holistic” team informing them about their break-through. The “analysis” testers ask for the the list of processes they got from the internal monitoring agent and also to come and join them in the IT offices.
Based on the new information they modify their search and start analyzing all the data available once again.
The “holistic” team comes and join in on the search. After a number of minutes one of the testers finds something that looks interesting and calls to the rest of the team to come and see.
She is not sure about the exact details but she remembers reading something about a component on the list some months or even years ago. With the help of another tester they start “googling” this information, searching for blogs, articles or release notes on the the specific component, and within a couple of minutes one of them shouts “EUREKA! I found the problem and the solution!!!”
They download a file, give it to the IT technicians in the room and ask them to go to all the machines that are suffering the issue and replace the old file with the new one.
Scene 5 – Tying all the knocks together
The team gathers in the General’s office and quickly goes over their findings.
They explain that the source of the problem is a file that was been feed by the translating system that included some uncommon (but legal) characters in an old middle eastern language, and was causing some of the computers to get stuck while trying to load it to memory.
The problem was even worst because this file, that had been fed into the system 3 days ago, was been periodically loaded into the local memory by the program in order to make the system work faster, just like the rest of the files that were received in the last 2 weeks.
This bug had already been fixed a number of years ago by the company developing the Operating System, it was a small bug in one of the language libraries. But since the computers used by his team and international operatives were disconnected from the Internet due to security measures, this specific updated had not been installed in any of the old computers as part of the regular software updates.
With this information in hand, our testing team simply provided the IT clerks with a new file that would immediately fix the problem.
Maybe not as good as Magnum PI, but what do you think?
I am also not sure this is what would make any of my kids turn and tell me that they want to be a Tester when they grow up, but it surely makes our work look as a lot more interesting (and less grey!).
BTW, many of the facts on this story came from actual bugs I found and was able to reproduce during my years working as a tester (not the part of the secret base in the mountains, in case you were wondering…).
Do you have other challenges or ideas for our T-G-I team?
Feel free to share them as comments if you do!