109

ISBN : 978-81-963532-2-3 (E-Book) The testcases must be carefully chosen to exercise the interfaces in all possible manners Large softwaresystemsnormallyrequireseverallevelsofsubsystemtesting;lowerlevelsubsystemsaresuccessively combined to form higher-level subsystems. A principal advantage of bottom-upintegration testing is that several disjoint subsystems can be tested simultaneously. In a purebottom-up testing no stubs are required, only test-drivers are required. A disadvantage of bottom-up testing is the complexity that occurs when the system is made up of a large number of smallsubsystems.Theextreme casecorrespondsto thebig-bangapproach. Top-DownIntegrationTesting Top-down integration testing starts with the main routine and one or two subordinate routines inthe system. After the top-level ‘skeleton’ has been tested, the immediately subroutines of the‘skeleton’ are combined with it and tested. Top-down integration testing approach requires theuse of program stubs to simulate the effect of lower-level routines that are called by the routinesunder test. A pure top-down integration does not require any driver routines. A disadvantage ofthe top-down integration testing approach is that in the absence of lower-level routines, manytimes it may become difficult to exercise the top-level routines in the desired manner since thelower-levelroutines perform several low-levelfunctions such asI/O. MixedIntegration Testing A mixed (also called sandwiched) integration testing follows a combination of top-down andbottom-up testing approaches. In top-down approach, testing can start only after the toplevelmodules have been coded and unit tested. Similarly, bottom-up testing can start only after thebottom level modules are ready. The mixed approach overcomes this shortcoming of the topdown and bottom-up approaches. In the mixed testing approaches, testing can start as and whenmodules become available. Therefore, this is one of the most commonly used integration testingapproaches. PhasedVs.Incremental Testing Thedifferentintegrationtestingstrategiesareeitherphasedorincremental.Acomparisonofthesetwo strategies is asfollows: o Inincrementalintegrationtesting,onlyonenewmoduleisaddedtothepartialsystemeach time. o Inphasedintegration,agroupofrelatedmodulesareaddedtothepartialsystemeachtime. Phasedintegrationrequireslessnumberofintegrationstepscomparedtotheincrementalintegrationappr oach.However,whenfailuresaredetected,itiseasiertodebugthesystemintheincrementaltestingapproa chsinceitisknownthattheerroriscausedbyadditionofasinglemodule. In fact, big bang testing is a degenerate case of the phased integration testing approach.Systemtesting Systemtestsaredesignedtovalidateafullydevelopedsystemtoassurethatitmeetsitsrequirements.There 104 Software Engineering Keerthana P, Manasa KN, Ganga D Bengal

110 Publizr Home


You need flash player to view this online publication