Software Testing

Software Testing

Software testing is a crucial step in determining whether a software application is viable, ready for market and is free of bugs. No software will be completely free of glitches but thorough software testing can and will make sure that it is as error-free as humanly possible.

There are two broad types of software testing: functional and performance. Each has its merits and both are important.

Functional Software Testing

Functional software testing takes place during the development phase of the given application, usually towards the completion of the program (though there are some who believe that testing should be ongoing from early on in the development process, with each component of the software being tested each step of the way). This form of testing makes sure that the individual components of the software are performing as they are designed to do. It makes sure that the software is working properly both on the front end (user commands and screens, searches and other data manipulation, integration with other programs, etc.) as well as the back end (software security, how well the upgrade function performs, etc.).

Performance Software Testing

Performance software testing is perhaps the most important form of testing as it is the way in which unforeseen bugs in the application can be detected and eliminated. Performance testing can be broken down into four basic types: classic, load, stress, and volume.

The classic testing involves merely using the software for the functions it was designed to do and measuring things like response rates and overall functionality. This form of testing can be done manually by programmers or automated using testing software.

Load testing gauges how efficiently the application performs when its functions are tested with varying workloads.

Stress testing looks to see how well the software reacts and compensates when resources are low.

Volume testing tests the functional limits of the application by increasing the amount of data thrown at it until it can no longer cope with the flow.

An additional form of performance software testing is regression testing which checks to see how software applications which have previously been successfully tested react and adapt to new enhancements or modifications. This form of testing is most often automated.

Testing Options

There are a number of testing options available. Most of them are not inexpensive but, if they help debug a valuable program, they could be worth the expense. There are automated and software-based testing tools which can perform many of the functions discussed in the previous two sections; they can also provide hosted tested facilities, which provide the hardware and software (and even, if necessary, the labor) for test applications. Usually, hosted facilities are good for load testing of new software applications but they can also perform the other forms of testing as well.

By Michael Willis           


Related Links:





 

 

 

Home | Site Map | Privacy Policy | About Us | Contact Us

Copyright © 2006, software-finder.org
All rights reserved.