
Rating Testing Definitions from Different Orgs
Intro
The definition of testing is one thing that a lot of technical people might assume is concrete and clearly defined, consistently shared between sources. After all, there are millions of people in the world paid professionally to test software. In my opinion, the definition of testing is actually slightly ambiguous, and there are subtle differences that can change the way we think about testing. The most egregious is the fact that testing tends to focus on “checking something works” or is “as expected.” This focus on requirements and expectations has been problematic for the industry because it makes bold assumptions about a human’s judgment and leaves no room for creativity/thinking outside of checking whether those expectations match reality.
My task in this blog is simple: search for the testing definition in a software context on YouTube and rate the definition based on my own opinion of what I think testing is, explaining why each definition deserves its rating.
Wikipedia
Software testing is the act of checking whether software satisfies expectations.
Rating: 3/10
This just doesn’t suggest any reason for a tester to go any further than looking at requirements. From experience, requirements are usually constantly changing and incorrect a lot of the time. This definition doesn’t give testers the scope to look for problems beyond requirements. A common theme with other definitions.
IBM
Software testing is the process of evaluating and verifying that a software product or application does what it's supposed to do.
Rating: 4/10
So generic. So IBM.
Katalon
Software testing is the process of checking the quality of software before launching to ensure that all requirements are fulfilled.
Rating: 2/10
The reason this gets a lower score than other similar sentences is because of the “before launch.” Testing can happen at any point, whether it’s launched or not. Really don’t see a reason for that at all.
Qase.io
Software testing is a way to assess the quality of the software and to reduce the risk of software failure in operation.
Rating: 6.5/10
Kind of generic, but still kind of accurate.
BrowserStack
Software Testing is a process of evaluating the functionality of a software under test.
Rating: 6/10
It’s simple, effective, but not too detailed. It doesn’t necessarily mention requirements or expectations, and it refers to testing as a process. Vague, but not misleading.
Atlassian
Software testing is an organizational process within software development in which business-critical software is verified for correctness, quality, and performance.
Rating: 5/10
I don’t hate this one so much, but it feels a little bland. I don’t see the need to include “business-critical,” but that might be me being pedantic. Again, it doesn’t really encourage any kind of exploration or approach that would find any problems or risk.
Global App Testing
Software testing is a comprehensive process that ensures that software applications are reliable, secure, and user-friendly.
Rating: 6/10
I like the fact that it doesn’t mention expectations and requirements but focuses on end-users.
Evil Tester
Software testing is a way to assess the quality of the software and to reduce the risk of software failure in operation.
Rating: 6.5/10
Used a lot by other companies, but could be a little more detailed on how to be approached.
Guru99
Software Testing is a method to check whether the actual software product matches expected requirements and to ensure that the software product is defect-free.
Rating: 1/10
Nobody can “ensure” a product is defect-free. Also, this type of testing requires zero critical thinking skills and zero scope for exploration. Hate it, hate it, hate it.
DevelopSense
Testing is the process of evaluating a product by learning about it through experiencing, exploring, and experimenting.
Rating: 10/10
This is the definition that I find the most compelling and accurate. This is not based on a huge man-crush for Michael Bolton (which I definitely have for his work), but empirical data of what I’ve experienced and having sat on the sentence for weeks/months on end, stewing on what the definition is actually suggesting.
Conclusion
I think it’s clear that there are a lot of definitions that are forming clusters. This further proves the hypothesis that there are checkers and deeper testers. The definitions that I prefer tend to not make sweeping promises that we cannot keep as people who make mistakes. DevelopSense has the best definition, which reads like poetry to me, but I won’t be getting it tattooed (yet).