Back in 2011, I approached Rob Lambert at the Software Testing Club on a small series, packed into a narrative format as I wanted to try that out. Rob decided to run that series on the Software Testing Club back then, and I had some fun writing it. Skip forward 11 years, and the Software Testing Club no longer exists, it’s been a while since I have been in touch with Rob, yet I figured, let’s see how this series aged over the years. As a sort of throwback Thursday for myself, I will publish the entries on a weekly basis, and read along with you. I think I ended up with eight chapters in the end and might add a reflection overall at the end. So, without further ado, let’s follow Peter’s tester journey along while he gets familiar with session-based test management.
Chapter 1: Session-based exploration
Peter took a deep breath as he opened the door to BigSoftware, Inc. While studying at the university, he’d done an internship, but this was his first real job. He was especially nervous because his Masters degree in Computer Science hadn’t covered much about software testing… or had he just been disinterested? Peter remembered the Software Engineering course he took in the fifth grade. On one of the slides with the V-model, there was indeed software testing mentioned, but Peter couldn’t remember anything from the lecture about testing.
Peter entered the building and moved straight to the receptionist at the front desk to introduce himself. He did not get specific orders for when to show up to work on his first day or who his superior will be.
“Good morning, ma’am. I’m Peter…”
“Peter Smith?” The receptionist seemed to know him.
“Yes, I’m Peter Smith. It’s my first day here.”
“I know. Let me call Mr. Johnson, your superior. He will introduce you.”
A few minutes later a tall man arrived at the reception.
“Hi, my name is Johnson, Eric Johnson, you’re Peter Smith?”
“Yes, I was…”
“Don’t matter. They always forget to tell our new colleagues when to show up.”
“Ok, Mr. Johnson.”
“Ah, first things first, please call me Eric. We call each other on a first name basis.”
“Good, now, let me show you your new workplace.”
Peter followed Eric along the floors of the tall building. Along their way, they came past several offices and meeting rooms. Peter tried to read some of the names on the door signs, but remembering names wasn’t Peter’s best-developed skill.
“This is your desk,” said Eric, when they finally got into one of the offices.
“This is your computer. I set it up just yesterday. Let me give you a short introduction to our business before I introduce you to your new colleagues.”
Eric started to explain a lot of things. The more buzzwords Eric used, the more Peter got distracted. Peter asked a lot of questions when Eric showed him the documentation of the software. Peter felt really dumb after Eric finished his little introduction. Peter wondered about all this knowledge that he acquired at the university, but that still did not tell him what to do in order to test software.
Eric took Peter after his little introduction into business matters.
“Ok, Peter, this is Jennifer. Jennifer is our senior exploratory tester.”
“I read a lot about the software and business behind your work here. Now I’m eager to see the application.”
“Oh, come to my place when you finish your round through the offices. I got a session scheduled later, where I might give you a short introduction.”
“Great, can’t wait to see more.”
Eric and Peter finished up their round through the offices of the other testers in Eric’s department, then went over to the developers sitting next door. Peter tried to remember some of their names, but being confronted with so many new names was a challenge for his memories. Besides, he still didn’t know how to test software thus far.
Peter joined Jennifer in her Exploratory Testing session. Jennifer popped up the main screen of the application, which Peter already had seen in the documentation he read earlier that day. Jennifer explained her approach.
“I work in time-boxed sessions. Before starting a session, I sit together with Eric to define a mission. The mission may be to test around some of the bugfixes we got in the latest build from the development team, or to find bugs in new features of our product.”
“Ok, this sounds easy.”
“Yes, it sounds easy. Over time you will acquire some skills in finding critical areas in the product. There are some traps you may fall into. Behind each step, there is a lesson to be learned.”
Jennifer started to walk through some business flows of the application. Peter sat down and watched her, interrupting with some of his immediate questions that came to mind. After about an hour, Jennifer said:
“Ok, that’s it for now. Let’s do a debrief.”
“Yes, after each session we sit together and discuss what went well, summarize the bugs we found, and reflect over the session. Let’s go to Eric. He’ll do the debriefing.”
When Jennifer and Peter arrived at Eric’s office, Eric immediately waved them in.
“So, Peter, how was your first Exploratory Testing session? What did you learn?”
“Well, first of all, I learned a lot about the product and the business behind it. It was a great experience and Jennifer taught me a lot in just a single hour. Though, I’m still a bit unsure what software testing is.”
“Ok, great. What do you think Jennifer?”
“Well, Peter is a great tester, he just doesn’t know, yet.”
Peter turned red on such appreciation.
“He needs some experience though in order to get conscious about his testing.”
“I got a question regarding the Exploratory Testing I did this morning,” Peter interrupted.
“Well, I figured all the testing we did was done just manually. Do you exercise the product with each new release?”
“Yes, we get a release build each night and explore it over the next day,” Jennifer answered.
“But, isn’t this… sort of… boring? All the repetition?”
Jennifer and Eric looked at each other for a moment. Peter started to feel uncomfortable about the silence in the room. Then Jennifer and Eric started to laugh.
“Well, if Exploratory Testing was all we were doing, that would be boring.” Eric started to explain. “But there is more to software testing than just exercising the software. Let me introduce you to John right after lunch. John is a former programmer and works on our automated tests. He’ll show you some of the automation of the repeated tests. By then you should get a better overview of your work as a tester.”
“Fine. That sounds interesting.”
“Now, to the technical part of your testing…”