- Test bench
A test bench is a virtual environment used to verify the correctness or soundness of a design or model (e.g., a software product).
The term has its roots in the testing of electronic devices, where an engineer would sit at a lab bench with tools of measurement and manipulation, such as
oscilloscope s,multimeter s, soldering irons, wire cutters, and so on, and manually verify the correctness of thedevice under test .In the context of software or firmware engineering, a test bench refers to an environment in which the product under development is tested with the aid of a collection of testing tools. Often, though not always, the suite of testing tools is designed specifically for the product under test.
A test bench or testing workbench has four components.
1.INPUT: The entrance criteria or deliverables needed to perform work
2.PROCEDURES TO DO: The tasks or processes that will transform the input into the output
3.PROCEDURES TO CHECK: The processes that determine that the output meets the standards.
4.OUTPUT: The exit criteria or deliverables produced from the workbench
An example of the software testbench
The tools used to automate the testing process in the above testbench perform the following functions
Test manager : It manages the running of program tests. The test manager keeps track of test data, expected results and program facilities tested.
Test data generator : It generates test data for the program to be tested.
Oracle : It generates predictions of the expected test results. Oracle may be either previous program versions or prototype systems.
File comparator : It compares the results of the program tests with the previous test results and reports the differences between them in a document.
Report generator : It provides report definition and generation facilities for the test results.
Dynamic analyzer : It adds code to a program to count the number of times each statement has been executed. It generates execution profile for the statements to show the number of times they get executed in the program run.
Simulator : It simulates the testing environment where the software product is to be used.
Wikimedia Foundation. 2010.