16 Jun Software Testing Process
Software Testing Process is simply the act of proving that the application being tested does what it was intended to do.
However, over the years, the software testing process has become more complex as computers and software have evolved.
Before the internet, personal computers, and mobile devices were invented, software testing was confined to mainframe computer applications. Using a terminal connected to the mainframe, the software tester would access the program to be tested and a user interface would display on the screen. This was a simple text-based display, without graphics (the pictures, icons, and buttons that we are accustomed to seeing today), and the software test process was fairly simple and straightforward.
The tester would test the application by reviewing the display and verifying the accuracy of the information displayed on the screen.
This was simply a matter of verifying that all expected information was displayed in the sequence and format outlined in the design and specifications for the product.
The software testing process consisted of a few basic steps:
- verification that the desired output is displayed in the expected format
- verification that the data (text values, numerical displays and calculations, etc.) is correct
- tests for navigation (moving from field to field, screen to screen)
- tests for producing printed reports (if any)
- security considerations (sign on allowed only with authorized ids and passwords)
The tests described above are called Functional Tests (aka “Black Box Tests” which we’ll cover elsewhere on this site). These are necessary steps in the software testing process and are always done before releasing a new software product.
While these basic steps are still required, they represent just a portion of the total tests needed for today’s sophisticated, complex software applications.
On the old mainframe applications, there was a simple transfer of the data from the mainframe computer to the terminal.
If an error was detected during the software testing process, the tester would simply report the error to the programmer responsible for the application, who would then detect and correct the error (aka “bug”) in their program.
When the correction was made, the application was then re-tested to verify that the bug had been fixed.
Today, software applications are enormously sophisticated and complex. Instead of just a simple transfer of data from a terminal to a single mainframe computer, today’s applications may be routed through a mix of computers, operating systems, mobile devices, and internet browsers before the final user interface is displayed to the user.
In today’s world the software testing process requires talented, well-trained testers to ensure delivery of a quality product to the user.