Software Testing

We use a real time testing tool to assist in our automation of testing. This provides us with the optimum testing strategy providing sufficient samples through a system's input space and the range of metrics identified below. The tool doesn't just manage the results of testing: it also helps by generating the code required to undertake tests on components of software as they are developed.

Software is tested during its development cycle to provide assurance about its quality. Test Cases are based upon scenarios and sample data, which are defined alongside the product's requirements. When the test cases are run, the system is monitored in a variety of ways:

It should be clear what testing achieves: it is able to identify the presence of faults in a system. It does not prove that a system is free of faults. The major problem with software testing is that the complexity of software is due to the potential for very large numbers of separate paths through the software. These are the result of not just branching, due to loops or conditional statements, but also to the ranges of values that may be encountered. In most systems complete verification through exhaustive testing is simply impossible.