Testing Software Assets of Framework-Based Product Families During Application Engineering Stage

Jehad Al Dallal, Paul Sorenson
2008 Journal of Software  
An application framework provides reusable design and implementation for a family of software systems. At the application engineering stage, application developers extend framework assets to build their particular framework instantiations. Typically, framework software assets are tested before being used. However, achieving complete coverage of a system under test is impossible or at least impractical. Therefore, framework software assets can have undiscovered errors that appear in some
more » ... ations. During the application engineering stage, it is important to identify the framework use cases that are used in the instantiation but not covered during the framework testing stage. In this paper, a testing model that considers retesting framework assets during the application engineering stage is proposed. In addition, a test-case-reusing technique is introduced to identify uncovered framework use cases and cover them by reusing the test cases already built during the framework domain engineering stage. Empirical studies are reported to show the adequacy of the proposed framework test-case-reusing technique in terms of reducing testing time and effort, and a supporting tool that automates the proposed test-case-reusing technique is developed and introduced. as AM() in MyAccount.init(); Create Object branches as Branches() in NewAccount.init(); Repeat as necessary { Acquire BranchName: string NewAccount.init() -> branch.addBranch(BranchName);} Postconditions: Operation NewAccount.init(); NewAccount.branches!=Null; Comments:
doi:10.4304/jsw.3.5.11-25 fatcat:cccx6wcexnem5bjbnhgwfjn5tq