Currently many object-oriented (OO) applications are developed using software components. It imposes more pressure on the integration testing because of the different perspective of component suppliers and users. How to reuse test scripts and how to reduce test redundancy are the main issues in testing component-based software.
In this paper, an enhanced message framework sequence specification (MfSS+) is used as hierarchical test scenario templates to generate test scenarios for the component-based software testing. MfSS+ was an extension of MtSS and MgSS originally proposed for testing OO applications and it was proposed to test OO design patterns, frameworks, and their applications. This paper uses the MfSS+ to specify test specifications for components. The specification can be used by component suppliers to test the component before delivery, and it can be used by component users during application development and maintenance. Techniques in test specification slicing, test scenario generation and applying traditional testing techniques in test scenario generation are introduced.
Component suppliers and component users have different responsibilities in the component-base system testing, the former test the component itself and provide component test specifications for component users, the later verify the configured component's functionalities and test the interactions between the component and its client objects. So, they use different test scripts in testing. Test scripts used by component suppliers concern with testing component interfaces with internal views, while those used by component users concern only with the correctness of used part of the functionalities of the component, thus test component interfaces with external views of the component.
Even more, test scripts vary in different phase of the integration process and contain different sets of test cases derived from the test scenarios generated from the specific MfSS+. By using ripple effect analysis and test specification slicing techniques, test cases can be reused and test redundancy can be reduced.
A COM-based inter-bank transaction switching-center system (ITSS) is used as an example to illustrate the techniques present. The test results show that the approach proposed in this paper significantly reduced the test redundancy and enhanced the test script reuse.