I’ve been working at BugHuntress for 4 years now. It’s where I learned to test and where I realized myself as a tester. Before BugHuntress, I worked partly as a designer, partly as a PHP developer. QA is both interesting and indispensable business. In this article I’ve tried to explain why.
When I think of my job, 7 words instantly come to my mind. Here are they.
Quality is simply the focus of the tester’s job. Every software product, mobile app or website should meet its initial requirements. While developers implement these requirements, testers ensure that the implementation actually complies with what was planned in the beginning. That is, testers serve as mediators between developers and customers in some way. For example, there are situations when developers have applied all requirements correctly, but the product works not in the way it was expected, or customers point to something that has come out differently from what they envisioned, etc. All this eventually comes down to quality which is an umbrella term for what we do.
The value of a tester’s job directly depends on how many bugs he found and how many of them he missed. I would say the proportion of both actually indicates the quality of our work. Of course, there’s an opinion that one cannot count all the potential bugs to be found, but the most significant and obvious of them must be found anyway. In other words, bugs are what we think about all the time, what we look at and search for every day. A product full of bugs means that we just haven’t done our job right.
There are many usability standards testers are guided by, such as ISO. But some standards like Microsoft or ABM can differ. That’s why we choose the most authoritative of them to base our testing on. At the same time, usability can be understood differently by different people and systems. For example, where the buttons should be located on the page, how many steps the registration should include, etc. – these issues may differ across companies.
There is even a separate type of testing called usability testing to ensure these important product issues are handled properly. It’s not as important as functional, security and performance testing, but also the key one. This is clearly seen in situations when the product is perfectly functional and works great from the technical point of view, but, for example, on-site registration takes users a whole 5 steps and they have to load new pages with each one. That’s uncomfortable for users and indicates low usability of the product. In the end the user is the most important person in this all, that’s why usability of the product just cannot be overlooked.
Creativity is crucial in testing, first of all because testers derive from developers and their work can be viewed from many sides. Creativity is also closely connected with experience. A beginner tester can’t be creative in what he does at first. He takes the problems head-on, for example, just trying all the buttons he sees to test a site, etc. He’s not creative yet. In contrast, an experienced tester takes issues creatively since he already knows testing methods, tools, tricks and every other means that can help him. The matter is testing doesn’t have a recipe fitting all situations, so you need to learn as much as possible and take your job creatively.
Every product we test must be reliable, that is, any number of users should be able to rely on it and it won’t bring them down. For example, when a site works normally with 500 visitors at a time, it’s OK. But if it’s down once 550 users visit it simultaneously, it’s no longer reliable for them.
Reliability also relates to such product characteristics as actuality, relevance and technical modernity. For example, testers must care about versions support. That is, the site or product they are testing should be compatible across all the major OSs, browsers and other computer platforms the end user is likely to use. For instance, if users can’t run your software on Windows 8, it’s not reliable again.
- Competitive ability
Besides ensuring the product is bug-free, testers should care about how competitive it will be. In most cases customers are non-tech people and they don’t know how to make their products competitive, so testers should help them. Good testers not only check how the customer’s requirements are fulfilled, but also try to contribute their own technological improvements into the product. I think, such improvements indicate the responsibility and professionalism of a tester a lot.
It’s very similar to usability, but not quite the same. If usability is more about complying with the standards, simplicity of the product and its ease of use are about how comfortable users feel using it. This aspect is kind of personal and indicates the human side of testers’ job, because testers can ensure the perfect simplicity of the product only when they care about the people who will use it.
The product is simple when it works as expected. Today’s busy users expect websites and software to have minimum content, be maximally intuitive and community-centered. And it’s our job as testers to make sure they get what they expect.