160 likes | 314 Views
SimCo – Hybrid Simulator for Testing of Component Based Applications. Richard Lipka, Tomáš Potužák , Přemek Brada, Pavel Herout Department of Computer Science and Engineering Faculty of Applied Sciences University of West Bohemia, Pilsen , Czech Republic. Agenda. Motivation and goals
E N D
SimCo – Hybrid Simulator forTestingofComponentBasedApplications Richard Lipka, Tomáš Potužák, Přemek Brada, Pavel Herout Department of Computer Science and Engineering Faculty of Applied Sciences University of West Bohemia, Pilsen, Czech Republic
Agenda • Motivationandgoals • Principlesofsimulationtesting • SimCo structure • Experimentsand case study • Futurework
Motivationandgoals • Components as standard units • Stored in repository, used to buildanapplication • Described by • Function • Extra-functionalproperties • Testingofcomplexcomponent-basedapplication • Testsofunfinishedapplications • Replacementofhumantesters in somecases • Speed upofthetestingprocess by testingonly part ofapplication
Simulationtesting – generalprinciple • Simulationoftheusersactions • Interactionwith user interface • Welldefined set ofactions – use case scenario • Simulationoftheenvironment • Othersystemsused by application • Skippingofsomecomputation • Why to performcompressionwhen I want to test GUI
Hybrid simulation • Real components are testedtogetherwithsimulatedones • There are no alterations in realcomponents • Simulationcomponentsserves as • Simulationofthesurroundingenvironment • Placingofmeasurementprobes • „Oracle“ whenrealcomponentistooslow / unavailable
SimCocomponents • Corecomponents • Funcionalityoftestingtool – callendar, resultsmeasurements • Testedcomponents • Real, unchangedcomponentsoftestedapplication • Simulatedcomponents • Componentstubs, simplifiedfunctinality, oracles, simulatedfunctionality • Proxy componentsbetweenrealones
Scenarios • Descriptionofmandatoryevents • XML file, whenandwhathappens • Regular / Casual / Rare • Settingsofsimulatedcomponents • XML file, depends on simulatedcomponent • Pre-calculatedresults • Settingsofintermediatecomponents • Propertiesofcommunication • Compositionofthetestedapplication • Whichrealandsimulatedcomponentsshouldbeused
Experiments – testingtechnologies • Java, OSGi, SpringDM • Testingapplication – filemanager
Experiments - overhead • Comparisonofthetimeconsumed by testedapplicationandtimemeasured by SimCo
Experiments - performance • Testingof performance ofdifferentimplementationsofonecomponent • Displayingfile in definedformat • Constantandlinearcomplexity
Experiments - communication • Measurementsof data sentover a network device • Totalammountoftransferred data • Countofmessagessentandreceived • Analysisof transport and network layerheaders • Allmessagescorrectlyobservedanddelivered
Case study - Openmatics • Testingof car onboardsoftware • Applications – „Boxlets“ as components, availablefromrepository • Measurementsof network communication • Speedingupoftesting by replacementoforiginalscheduler by itssimulation
Futurework • Solvingproblemswithcallsof Java API • Support forautomatedpreparationofscenarios • Generatingof basic simulatedcomponents • Based on analysisof use case specification • Comparisonwith static codeanalysis • Determiningwhat type oferrorscanbediscovered by simulationtesting