A quick guide to software testing
Software testing is our favourite subject and there are several different “schools” of software testing covering traditional approaches, exploratory, context based, agile, etc. etc. etc. all of which offer great insight, processes and approaches.
BUT if you are a developing a new app, software or an update to a client website, you might not need the theory and detail, but a practical solution to mitigating risk and delivering a great bit of software!
A crucial technique we use for explaining software testing to customers and helping them to plan their approach, is to focus your requirements by answering 4 core questions:
1. Does it work? (Functional testing)
Fundamentally, your new app, software or website needs to deliver on the promises it makes as a product.
So we look first at the functionality that you are offering. Real-life testing is not about finding a bug that is not an issue.
We need to focus on the core functionality and put in place testing to ensure that your software delivers on that customer promise, for satisfaction, today and in the future.
2. Is it nice to use? (Usability testing)
UX is a buzzword that we all love. Getting the perspective of a user is important and you will lose that perspective if your head and heart are consumed with the development process.
Taking the time to understand if everything is as intuitive as necessary, or whether this needs to delight the user, is a great discussion topic to understand your software project testing needs.
3. Is it fast enough? (Performance testing)
Speed and performance are always important to a software developer, and we look to understand the target consumer and the reality of the environment you are launching to.
With this in mind we can determine how to prioritise speed and understand your goals.
4. Is it safe to use? (Security testing)
Safety, privacy and legislation are an important aspect of technology launches, and so software testing must take this into account.
Understanding the nature of your launch and whether it is an app or new release, we can work together to understand any risks that need to be mitigated and standards that need to be adhered to.
So yes, there are many more types of testing, approaches to testing, stages of testing, testing tools and techniques we can use, but at the end of the day your software needs to be tested so it can be used for the purpose it was designed to fulfil.