Abstract:
Software testing, also known as an important part of software development life cycle, will continue to be a primary approach for ensuring correctness of software systems. On the basis of two developed testing tools for the Visual Basic and C/C++ language respectively, the architecture of testing tools is extended to cover any context free language. And the module reusability of these testing tools provides the foundation for the extension. Then, the ways to enhance this module reusability are analyzed from various aspects of system design, and the block based program partition mechanism is presented, which ensures the consistency for testing semantic defined for any context free languages ultimately. Finally two examples are shown to illustrate this consistency.