The Covid and Software Testing Connection: A Pandemic Story

When I look back on the pre-pandemic days, I realize I had been testing software for years without truly understanding what software testing meant. All that changed when the pandemic hit.

Covid was in the news cycle daily and you couldn’t get away from the constant articles telling you where and how to get tested for the corona bug. I was in the shower when I made the connection. The eureka moment was when I realized that maybe the type of testing that involves nose swabs and saliva may not be all that different from the testing I did with websites and mobile apps.

In one the longest showers I ever had in my 27 year career as a person, I went down a rabbit hole where I started questioning everything I ever knew about my life and software testing. I asked myself, “if software testing is just like Covid testing, but instead of looking for something wrong with a program I’m looking for something wrong with a person, then does that idea of testing apply to other kinds of testing? What about the testing my teachers forced on me for years? What about when I’m in the kitchen and I’m testing if the chicken came out of the oven raw?

These were some serious questions I was grappling with during the Covid era. Let me tell you my pandemic story.

It started with a 🚿 and ended with a 🤯.

Before the Pandemic Hit…

I was three years out of college holding a degree in Computer Science, and working as a Testing Manager at a tech startup. You would think with such a techie background and focus on testing that I would have already learned the definition of one of the most basic terms in software quality assurance (QA) – What is software testing?

Well, I did know how textbooks, online blogs, and YouTube videos define it. But, like those physics problems in school where we just memorized Newton’s equations and then plugged-and-chugged numbers, I only memorized testing jargon without internalizing their concepts. I didn’t really understand the physics behind software testing. Yet…

Before making the connection between Covid testing and software testing, I couldn’t explain software testing to a five year old. I couldn’t explain why I was performing certain testing activities at work. And, I couldn’t come up with innovative solutions to unique testing challenges without Google.

I never grasped how to think critically about Software Testing until the pandemic hit.

What did Software Testing mean to me before Covid?

Early in my career, while I was learning about software testing on the job and online, I came across many definitions that associated software testing with finding bugs. It was the process of verifying and validating that software behaved as expected. To do this I would compare actual application behavior with expected behavior based on product and technical requirements.

I liked this definition, because it was simple and outlined my testing activities clearly. I knew that before I could test any product, I needed to make sure I had its specifications. It wasn’t until after switching companies that I realized this understanding of software testing pigeonholed how I approached testing software. It was too specific and motivated me to always approach testing as a two-step process: first, get the requirements, and then start testing.

If you’ve been in QA for a while and have been exposed to how different companies test, you know that testing processes come in all forms. There isn’t a “perfect” testing process. We all just do what works for our teams. Back then I thought I “understood the assignment,” as the kids say. But, really, I was still naïve.

Further along in my career, probably three years in, I heard another definition from a coworker that defined software testing from the perspective of risk. In general terms, he said that software testing was an activity performed to mitigate deploying risky (buggy) software to production.

I also liked this definition, because it finally gave my other testing activities purpose. During these past three years I wasn’t just matching requirements with application behavior daily. I was also writing test cases, communicating with stakeholders, and generating test reports. All of these activities I could finally attribute to helping the team reduce risk of deploying broken software.

Still. Deep down I hated this definition. It was too “professional” and by that I mean it sounded technical and complicated. Without knowing it, I was actually in search of a simple yet accurate definition of software testing that I could relate it back to my everyday life.

Explain software testing like I’m 5 is what I wanted.

Explain to me what gravity is without just saying that it’s 9.81. Explain to me the concept of gravity so that I can apply it to the hundreds of physics equations out there. Explain to me the physics of software testing.

Connecting the Dots…

My eureka moment came in the shower as I was worrying about the Covid cases rising around me. I had to take a Covid test in a few days, and I was mumbling to myself about how I didn’t want someone poking inside my nose. 

I would ask myself silly questions that I knew the answer to.

What is the nurse even trying to do sticking a swab up my nose? 

Why will the receptionist need to take my temperature at the door?

And, why will I be asked to take a stupid Covid-19 questionnaire? 

Not before long, as the magical properties of a long hot shower usually do, the answer hit me.

Obviously, they want to know if I have Covid or not. But, to figure this out they would first need to know what my temperature is, whether I had been exposed to covid recently, and even whether the cells in my nose have traces of covid. Ultimately, they wanted information. Collecting this information and comparing with the CDC’s guidelines would help them decide if I am a Covid risk.

Sound familiar?

I found the various approaches nurses, receptionists, and others took to collect Covid information about me mind blowing.

In the world of Covid testing, these nurses search for bugs in people. In my world of software testing, I search for bugs in software.

What does Software Testing mean to me now?

It’s funny how once we get a really eye-opening shower thought our minds just go into overdrive. When I connected the dots, I couldn’t stop thinking about how everyday life compared to the software testing world that I knew.

What else in the English language has the word “testing” in it and how might it relate to collecting information?

The first everyday testing experience that came to mind were my school exams. It’s something most students dread, and many get to experience growing up.

I remember as a kid not thinking much about why my elementary and middle school teachers were giving us tests. It wasn’t until high school when I actually started to worry about grades that I realized what teachers were trying to accomplish. They needed to figure out whether we were absorbing the learning materials. Exams were their method of collecting this information.

To make it easier to visualize the analogies between covid testing, academic testing, and software testing, I’ll summarize them in a table.

Covid TestingAcademic TestingSoftware TestingConnecting the Analogy
NurseTeacherTesterPerson or thing administering the test
PatientStudentSoftware applicationPerson or thing under test
Nasal swab testExamTest planMethod to collect information
Nose fluidsExam questionsTest casesSpecific information to collect
Covid resultsExam gradeTest Pass RateAnalysis of collected information
Software testing analogies in the human world

Life after the Covid connection

It’s been two years since I made this Covid connection. 

My software testing career has not changed much, but my mindset has changed dramatically. I find myself more confident when I talk with others about testing. When I am confronted with a difficult testing task and confused, I return to the simple concept of information and my role in collecting it. This analogy has simplified many software testing challenges for me in the last couple of years.

For instance, when tasked to conduct performance testing on a simple static website, I initially blanked out. I have never done this type of testing before. 

I’m not a performance testing expert, I told myself. But, after overcoming the initial shock of the task, I simplified this foreign testing approach.

What information do my stakeholders want to know about the performance of the website? I started with this simple question and then looked for ways to collect the information others wanted. In the end, I was able to share information, albeit simple website performance data, that satisfied my stakeholders.  

I hope that by relating software testing to the simple, everyday testing examples around us, this techy sounding practice is no longer daunting. If you are lost in the world of software testing, or intimidated to jump in, then think about this:

Testing is just an activity to collect information. Software testing is just an activity to collect information about software.

Just as we understood the concept of apples falling towards the center of the Earth, we can also understand the physics of software testing. After all, we’ve been collecting and sharing information since the day we were born.


I sometimes have these strange ideas and thoughts that would be a good fit for r/Showerthoughts if I bothered to post them. This blogpost is a bit like that except that instead of trying to argue why doctors and QA Engineers pretty much perform the same work, I really just want to share my Covid story in the hopes that maybe others can point to it and say , “Oh yeah! I never thought of about software testing like that before.”

What do you think? Is the testing that doctors and software testers do kind of the same?

  • April 19, 2023