Other Posts

Kevin Cui


curious enough to be creative



blog

résumé

Ghost in the Shell - A Testing Horror Story

coverimage Photo by Scott Walsh

Disclaimer: This story may never happen in my life. However, it may happen in yours.

Rick

“So, you are Rick? Nice to meet you.”

I’m shaking hands with a middle-aged woman in her office. She is talking to me. She is Madame Q, the QA manager of Y Bank.

My name is Rick, 30 years old single male. I’m a test automation specialist. I’m working as a software consultant in banking. I’m universally recognized in my consultant company as the top talent. People say, “With Rick, Without Risk!”

My business is to help my client solve their technical problems in software testing. I have a motto “Automate all the things!”.

Today is my first day in Y Bank. I have a 3-month project here to provide them a test automation solution.

Y Bank

Y Bank is one of the top banks in the world. As a Fortune 500 company, Y Bank provides tons of financial services in the worldwide. In this department, there are around 50 developers and 10 testers. All of them are consultants from different IT consultant companies. They are developing an online banking tool, which provides financial services to other companies.

QA team

Madame Q is showing me my working place. It’s an open space with around 10 desks.

“Welcome to our QA team. Currently, we have 5 manual testers and 3 automation testers.”

Everyone in the office suddenly stands up and comes closer to me. They tell me their names and shake hands with me.

She points to the corner where my desk is.

“In case, you wonder where are developers. There is another open office for them. We are in building A. They are in building B.”

Plan

In 3 months, they are going to launch a final product. There will be a 1-week quality gate in 2 months. As QA team, we have to catch all bugs during the quality gate. Then developers will use 1 month to fix all bugs. After that, QA team will have another 1-week regression testing session to validate the whole product. Then hopefully, it’s a happy ending.

Problem

QA team doesn’t have enough manpower to verify all requirements of products in just 1 week. Madame Q came up with a suggestion: automatizing as many as possible requirements in order to reduce manual work. After calculated investments and benefits, the higher managers approved Madame Q’s suggestion. That’s why now I’m involved in her plan. Madame Q starts to present her ambitious goal: In 2 months, we are going to automatize 1000 test cases, from scratch.

The One

Although I don’t know how good other 3 automation testers are, I trust absolutely my technical skills.

After several days, I find out other 3 automation testers are quite junior-ish. They didn’t say anything about how to proceed this project, but you can see the worries from their faces.

After several meetings with other testers and developers, I know more or less how the product works.

I know that I’m the One who can save the plan. Then, I organize a meeting with Lead Developer, Head of Developers and Madame Q. I propose them a test automation framework and show them what we are going to do. Everything I planned looks reasonable. I see they are knocking their heads. They didn’t say anything about how to proceed this plan, but you can see the satisfaction from their faces.

Next day, Madame Q dispatches tasks to automation team. Now I’m alone in charge of implementing the test automation framework. Others are working on creating test cases from automatizing requirements.

Ghosts

Finally, after 1 month, I finished the whole setup of automation framework: Test cases can be executed automatically; Test reports will be sent to managers…

The whole test automation looks really shining, as the same stuff I did in my last projects. Everyone, no matter he or she understands what I did or not, gives me their thumbs-up. I’m gaining my reputation very fast. Even testers on other sites in Y Bank, they invite me to their meetings to discuss their test automation.

Below the surface, things get chill.

Several test cases are not handled perfectly in the framework. Sometimes they pass, sometimes they fail. They are like ghosts haunting in the system. These strange creatures will cause people being worried. Therefore, people will start to lose the confidences on my automation framework setup.

Gladly, I blocked all these test cases running in the system. No one else knows this secret, except the guy Jack who created these test cases. I required him to fix these tests, although I know that he did create all tests correctly.

Next day, Madame Q asks for the number of test cases in an email. In order to make the number reaching 1000, I decide to add these ghost tests in official execution suite. They will be executed as the first time in the quality gate. Jack shows his worry about my decision. I tell him to keep calm because I have already the idea how to fix ghost tests. Besides, we don’t need to worry about the initial goal anymore.

Judgment Day

Today is the day when quality gate starts, as known as Judgment Day. For us, automation testers, we are quite relaxed. All the test cases will be triggered automatically to check target release build. It will take a roughly half-day to get the final green-red style test report.

When I open the final test report in my mailbox, surprisingly, all ghost tests are marked as green color. It’s the color with full of hope. I breathe a sigh of relief.

Ending

Weeks later, when I come to the office, there is an envelope on my desk. My name “Rick” is writing on the envelope. I know that it’s an outcome of my last talk with Madame Q, before she flies to another country for the product launch. I know, inside this envelop, it’s a job offer. Y Bank wants me to become an official employee, with a higher position.

Today is also my last day of the 3-month project. I need to decide now whether to accept this offer or not. I’m sitting in my chair and thinking whole day long.

Everyone in the office starts to go home. Staring at the envelope, I still don’t have a clue.

It’s time that the nightly test execution starts running. My computer screen turns on, showing me the monitoring of each execution. The first test is green, now it runs the second one… green, green and green…

I stand up and take my bag. I walk to the door and turn off the lights of the office. I look back in the office, only my computer screen is bright in the darkness. It shows green, green and green…

Suddenly, everything on the screen stops moving. It turns a full-screen warning in red. The red color is expanding and eating all the darkness. There is a name on the envelope reflected by the red light. It is a bloody red “Rick”.


Happy Halloween! 🎃

pumpkin-dance