Why bother testing?

Why bother testing?

As a tester, I don't practice selling my craft very often. This blog post is an attempt to put together my thoughts when asked the question, "why bother testing?"

Let's talk about bugs

When was the last time you used some buggy software? How did it make you feel? Did it cause you to swear at your computer in frustration? We are surrounded by software full of bugs, some bugs are minor but some cause us to pull out our hair in frustration. Some bugs when discovered cause nightmare headlines to spread like wild fire. Buggy low quality software is hard to sell, maintain and keep people using. Your customers won't rave about your products to their friends if they think it's shit.

Testing doesn't improve quality

Testing itself doesn't improve the quality of the product, but it can help highlight issues that could impact the perception of quality. Bugs will always exist in software, it's impossible to test for every possible scenario every time before releasing to production (especially in a world of continuous integration/deployment) but if you knew about some the bugs in you products before your customers find them then you'd be in a better place to make informed decisions about what to release and when.

Testing is active discovery

Everyone does testing on some level, most of the time we are unaware of what we are doing until we discover a frustrating situation. Testing is a skill where you practice looking for quirks in software. Testers are constantly experimenting and observing the product and are well practiced in talking through their thought processes.

There are generally 2 activities people say they are doing when they talk about testing;

1 - Verify the product works as intended

2 - Actively go hunting for bugs

Activity 1 is usually where people talk about automation, when your product can be codified as "working as intended" you might be in a place to build some automation checking to help facilitate faster feedback. However you could build all of the automation checking in the world into your products but people can still think it's shit. You users don't care that your unit tests are less than 0.01% flakey.

Activity 2 can be easily practiced, it's not like anyone knows where the bugs are in software until they are discovered. You can build things into your products that make it easier for people to report the bugs they find or you could do a chaos monkey approach to find out where your product crashes unexpectedly.

There are many other activities involved with testing but I want to keep this high level.

People say testing is risk mitigation

This is not true, testers may use their own internal risk radars to help guide their testing efforts but testing itself doesn’t mitigate any risks. I like the analogy; testing is like an x-ray, an x-ray on it's own can't tell you how healthy you are or prevent issues from happening but it's a tool that can give you a snapshot in time so your doctor can make informed decisions about some element of your health.

Testing can help people answer questions like, "are we comfortable shipping this code to customers?". Bugs are a fact of life but we can't fix what we don't know. Testing helps us discover these potential issues.

Paolo Gabriel Cruz

Contract Validation Analyst; Test Analyst

6 年

I agree! Software testing is a vital part of software development. It’s important to uncover and resolve bugs - there are bugs which can have catastrophic impact if not discovered and resolved.

回复

要查看或添加评论,请登录

?? Sam Connelly的更多文章

  • Using metrics for test coverage reporting

    Using metrics for test coverage reporting

    Imagine you are working on a mobile app project with releases every 2 weeks. Say a manager wants a report on test…

  • A Mobile App Test Strategy

    A Mobile App Test Strategy

    The superannuation and investment mobile app I’ve been working on over the last 1.5 years is doing well.

    2 条评论
  • Evolution of my CV

    Evolution of my CV

    My CV has evolved a bit over the years. But there have also been a few constants too.

    3 条评论
  • Orders of Communication

    Orders of Communication

    Have you ever wanted to ask a large group of people their thoughts on a particular topic? Maybe you want to know what…

    3 条评论
  • My next Career move

    My next Career move

    I recently asked myself, “where would I like to take my career?”. This is a blog post on that reflection.

  • Back on the job market (again)

    Back on the job market (again)

    It’s only the third time this year I find myself job hunting (again). It was only back in June I found myself going…

    2 条评论
  • Creating your own password algorithm

    Creating your own password algorithm

    It’s pretty common to hear stories of passwords being hacked and it’s still surprisingly common for people to use the…

    6 条评论

社区洞察

其他会员也浏览了