Can We Trust Humans to Test Software?

Many of you will agree that testing software is not the most exciting or interesting of tasks. There are some amongst us that do enjoy the challenge of identifying test cases that will completely exercise the module, task, sub-system or system and good for them. But mostly companies cannot afford the luxury of having a dedicated test team and the burden of testing falls to members of the development team. Those that draw the short straw!

A developer that has been working in the heady realms of web-base 3D graphics is not going to have ‘his boat floated’ by testing serial comms on an embedded processor. That may be a bit of an extreme example, but you get the point.

So what is probably the most important task before system delivery is entrusted to a group of de-motivated engineers that just want to finish as quickly as possible? Testing is repetitive, tedious and difficult. Add to that the pressures of looming delivery dates and soaring costs, and it’s a recipe for warrant work; or reduced profit.

This is true of all stages of testing but experience shows that regression testing falls into this trap the most. So many companies have ‘products’ that are really a core of standard software that then has to be modified to meet the requirements of a current application. The new software is developed and tested, but then the core software needs to be checked to ensure that it still does what it’s supposed to. This is a real bore, it’s all been done before but it’s vital in order to maintain profitability and reputation.

System testing where links to other systems need to be simulated to produce valid and invalid inputs, is another area where it can be tedious to generate and apply test cases. Again, this area has a big impact on profit and reputation.

Automation is the key. It obviously involves an initial investment of time and money, but the ROI can be enormous. Building a repeatable set of tests to exercise all of the functionality and the error checking is not a simple task BUT it must be done if you are to be confident that the system will not fail following installation. Once the tests have been generated they can be saved along with the software and can be reused to investigate problems or as a regression test for the next iteration of the software.

This is a problem that we have come across many times and are developing a tool to overcome. Look for ARTIST on our website soon.

More From The Blog

IR35, Here it Comes Again…

IR35, Here it Comes Again…

IR35, Here it Comes Again...In 2021 the reform to IR35 Off-Payroll rules is to be rolled out to the private sector. As before the reform will only affect companies that do not meet the following attributes: an annual turnover below £10m fewer than 50 employees or a...

Solving the Resource Conundrum

Solving the Resource Conundrum

Solving the Resource ConundrumPicture this. One minute all is fine and dandy, you have access to all the resources you could possibly need, then bam an unexpected challenge arises. Suddenly you find yourself lacking the capacity to meet the new need. What are your...

Quality – An Aid to Produce Consistent Rubbish

Quality – An Aid to Produce Consistent Rubbish

Quality - An Aid to Produce Consistent RubbishAnother year has passed, and myself and a colleague have hosted a BSI auditor for our annual ISO9001/TickITplus check-up, and in fact this was more than the regular check, in that it was our 3-year re-certification audit,...

The Hazards of Legacy Systems

The Hazards of Legacy Systems

The Hazards of Legacy SystemsBeing the owner of a software system with a dedicated customer base sounds like the kind of position one would like to find themselves in. At least until it gets superseded and you have to face dealing with a legacy system. Many developers...

How to Test Without Access to The Test Environment

How to Test Without Access to The Test Environment

How to Test Without Access to The Test EnvironmentIn many of our previous articles, we have expressed the importance of achieving a high standard of testing. Potentially blocking this achievement, several factors can come together to affect the quality of your...

The Technical Workshop – How To Make Them Work For You

The Technical Workshop – How To Make Them Work For You

The Technical Workshop - How To Make Them Work For YouAnyone experienced in product design will understand just how valuable a facilitated workshop can be. Bringing together a project's key stakeholders into a single space allows for the exploration of diverse...

Developing Software for Safety Related Systems

Developing Software for Safety Related Systems

Developing Software for Safety Related SystemsSoftware systems should always be both robust and reliable, however the moment you introduce a safety element, this need for reliability increases significantly. The level of safety required is governed by the severity and...

How to Choose an Outsourcing Partner

How to Choose an Outsourcing Partner

How to Choose an Outsourcing PartnerHaving recognised a need to outsource, and worked your way through the initial preparations, you are now in a strong position to seek out a suitable partner. Choosing an outsourcing partner is no trivial affair, so taking the time...