Professional Documents
Culture Documents
Oladimeji Levels of Testing
Oladimeji Levels of Testing
Oladimeji Levels of Testing
PatrickOladimeji
AdvancetopicsinComputerScience
Dr.MarkusRoggenbach Prof.Dr.Holger Schlingloff UniversityofWalesSwanseaComputerScienceDepartment
Contents
1. Differentlevelsoftesting. 2. Importantfactorsontestinglevels.
o o Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
3. Testlevelsandsoftwarelifecyclemodels.
o
DecompositiontreeofSATM
SATMsystem Terminal I/O CentralBank Communication
Screen Driver
ValidateCard
PINEntry
Manage Transaction
Close Session
1.DifferentLevelsoftesting
Whatisaleveloftest? Definedbyagivenenvironment environmentisacollectionofpeople, hardware,software,interfaces,dataetc.
1.Levelsoftesting
UnitTesting IntegrationTesting SystemTesting AcceptanceTesting Regressiontesting
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
1.1UnitTesting
Aunitissmallesttestablepieceofsoftware
canbecompiled,linked,loaded e.g functions/procedures,classes,interfaces normallydonebyprogrammer Testcaseswrittenaftercoding
Disadvantage
Testcaseswrittentosuitprogrammers implementation(notnecessarilyspecification)
BettertouseBuddyTesting
1.1UnitTesting
BuddyTesting
Teamapproachtocodingandtesting Oneprogrammercodestheothertestsand viceversa
Testcases writtenbytester(before coding starts).Betterthansingleworkerapproach
Objectivity crosstraining Modelsprogramspecificationrequirement
1.1UnitTesting
NormallyinprogrammersIDE(comfortzone) Findunitbugs
Wrongimplementationoffunctionalspecs
SATMExample
Testingfunctionprocedurese.g.theValidatePIN() procedure
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
1.2Integrationtesting
Testforcorrectinteractionbetweensystemunits systems builtbymergingexistinglibraries modulescodedbydifferentpeople Mainlyteststheinterfacesamongunits Bottomupintegrationtesting
Useofdrivers
Topdownintegrationtesting
Useofstubs
1.2Integrationtesting
Whodoesintegrationtestingandwhenisit done?
Donebydevelopers/testers Testcaseswrittenwhendetailedspecificationisready Testcontinuousthroughoutproject
Whereisitdone?
doneonprogrammersworkbench
Whyisitdone?
Discoverinconsistenciesinthecombinationofunits.
1.2.1StubsandDrivers
SATMsystem Terminal I/O Manage Sessions Close Session
CentralBank Communication
Screen Driver
GetDigit
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
1.3SystemTesting
Testofoverallinteractionofcomponents Finddisparitiesbetweenimplementationand specification Usuallywheremostresourcesgoto Involves load,performance,reliabilityand securitytesting
1.3SystemTesting
Whoperformssystemtestingandwhenisit done?
Donebythetestteam Testcaseswrittenwhenhighleveldesignspecis ready
Whereisitdone?
Doneonasystemtestmachine Usuallyinasimulatedenvironmente.g.vmware
1.3.1Systemvs.Integrationtesting
Whatvs.How Requirementspec>what detaileddesignspec>how Systemtestingfunctionalnotstructural
1.3.2Example:System/IntegrationTesting
SATMsystem Terminal I/O Manage Sessions Close Session
CentralBank Communication
Screen Driver
GetDigit
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
1.4AcceptanceTesting
Demonstratessatisfactionofuser Usersareessentialpartofprocess UsuallymergedwithSystemTesting Donebytestteamandcustomer Doneinsimulatedenvironment/real environment
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
1.5RegressionTesting
Ongoingprocessthroughouttestinglifecycle Newbugfixbreakspreviouslytestedunits? Performregressiontestwheneverprogram changes
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
2.1Factorsinfluencingtestscope
Sizeofproject Complexityofproject Budgetforproject Timescopeforproject Numberofstaff
2.2Whytestatdifferentlevels
Softwaredevelopmentnaturallysplitto phases Easilytrackbugs Ensuresaworkingsubsystem/component/ library Softwarereusemorepractical
Contents
1. Differentlevelsoftesting.
o o o o o UnitTesting IntegrationTesting SystemTesting AcceptanceTesting RegressionTesting Factorsinfluencingtestscope Whytestatdifferentlevels? V Model
2. Importantfactorsontestinglevels.
o o
3. Testlevelsandsoftwarelifecyclemodels.
o
3.1TheV modelandtestlevels
Summary
Differentlevelsoftest
Unittesting Integrationtesting Systemtesting Acceptancetesting Regressiontesting