Article
13 Feb
2019

Schrödinger’s Software Test

If you don't currently test your website or software… how do you know if it's any good?
Ben Ward
|
5
min read
schrodingers-software-test
WE EXPLORE HOW SCHRÖDINGER'S CAT HAS MORE TO DO WITH SOFTWARE TESTING THAN YOU THINK!

Ben, a Test Engineer from The Virtual Forge explores how Schrödinger's Cat has more to do with software testing than we think! There are thousands of books, blogs and videos out there about what software testing is and how to do it. And while they can all be useful in their own way, hopefully today we can get you to think about it slightly differently.

SCHRÖDINGER’S SOFTWARE TEST

Software testing allows you to validate your software before going to market. By rigorously testing your software you will save time, money and minimise production issues and give your product the real-world seal of approval.

PREFER TO READ IT?

There are thousands of books, blogs and videos out there about what software testing is and how to do it. And while they can all be useful in their own way, hopefully today I can get you to think about it slightly differently.

The process of software testing can be defined in several ways:

  • Checking that a system meets business requirements
  • Validating that a system works correctly in the hands of a user
  • Measuring if a system performs within an acceptable time frame
  • Or simply, just trying to find bugs

But at the centre of all of those different statements is one core element - QUALITY. Just how GOOD is the product we are creating, and how can we MEASURE that?

It occurred to me that one way we can look at this is to consider the famous thought experiment known as 'Schrödinger's Cat'.

Bear with me, we’re going to get a little weird for a minute... To paraphrase the experiment as best as I can:

  • A cat is placed in a box along with some poison.
  • The box is sealed so you cannot see inside.
  • After a certain amount of time has elapsed, the poison will either have been released or it won't.

So the cat is going to either be dead or alive.

The idea of this rather gruesome experiment is this - until you open up the box and have a look inside, you have no idea what state the cat is in.

In fact - and this is the weird bit - you have to consider the cat to be both dead AND alive at the same time…

...because you cannot KNOW FOR SURE either way.

Now I know this isn’t a perfect analogy for testing, but the point I want to get across is this: How do you ever really know how good your system or product is?

You have to observe it, just as we had to observe the cat.

So let's move away from cats in boxes and look at these ideas in the world of software development.

WE CAN CONSIDER OBSERVATION IN TWO DIFFERENT WAYS.

The OBJECTIVE view is not influenced by personal feelings, interpretations, or prejudice. It’s based on facts and its unbiased.

Here we take an independent look at the product we are creating, in order to apply an unbiased evaluation.

And the SUBJECTIVE view pertains to a characteristic of an individual; it’s personal, emotional.

Which is more of a practical, pragmatic look of the product to ensure that we deliver something that will really satisfy our particular clients needs.

Matching these two sometimes opposing ideas together is one of the big challenges of creating really top quality software.

In testing terms, we take the OBJECTIVE view when we perform things like:

FUNCTIONAL TESTING: When I press a button the system responds in the correct way.

PERFORMANCE TESTING: When I press a button I don’t have to wait forever for a response.

REGRESSION TESTING: When I press a button some other part of the system doesn’t explode.

And we take the SUBJECTIVE view when we perform things like:

USER ACCEPTANCE TESTING: When a user logs in they access everything they need to for THEIR specific job.

UX TESTING: Does the system feel ‘good’ to the user, is it intuitive, do they enjoy using it?

When we can successfully bring both objective and subjective observation together, through our expertise as software designers, developers and testers, we stand the best chance of creating something of real quality.

Something we can be proud of.

If you’re interested in finding out more about our projects, our team and what we do, give us call.

We keep our social media updated with our news, and we try to spread around our happiness - follow us on Facebook, Twitter and Instagram.

Our Most Recent Blog Posts

Discover our latest thoughts, tendencies, and breakthroughs in the realm of software development and data.

Swipe to View More

Get In Touch

Have a project in mind? No need to be shy, drop us a note and tell us how we can help realise your vision.

Please fill out this field.
Please fill out this field.
Please fill out this field.
Please fill out this field.
Send Message

Thank you.

We've received your message and we'll get back to you as soon as possible.
Sorry, something went wrong while sending the form.
Please try again.