SlideShare a Scribd company logo
1 of 15
Download to read offline
Defect discovery by simulation-
based testing and model checking
SERENE 2014, BudapestRichard Lipka
Marek Paška
Tomáš Potužák
Motivation and goals
Software components as standard assembly units
Stored in a repository
Described in terms of
Provided services
Extra-functional properties
? State ?
Testing component-based application
Testing of components + testing of finished assembly
Replacement of human testers when it is possible
Speedup of testing after update
15.10SERENE 2014 2
Basic concept
Technologies
Java + OSGi (Blueprint extension)
Code generation + Java Pathfinder
Simulation for
Testing of software functionality
Verifiing extra-functional properties
Model checking for
Proving of properties
15.10SERENE 2014 3
SimCo – simulation testing
Using of simulated components for
Replacing human testers
Oracles when real components are too slow or not
available
Simulation of the environment
Hybrid simulation
Simulated and real components run in the same
environment
Non-invasive testing
No changes in the real components the same
binaries as in production system
15.10SERENE 2014 4
SimCo and use cases
Use cases as a basic definition of application
behaviours
Good base for test from the user point of view
Described in semi-structured way graph
representation of application behaviour
Test capable of
Observing correct sequence of action
Observing data (correct values, data amount)
Checking properties (latency)
15.10SERENE 2014 5
SimCo and use cases
15.10SERENE 2014 6
SimCo – Basic structure
Core components
Calendar, results
collecting
Transparent proxy
Automatically generated
Runtime or source texts
Observation, network
simulation
Simulated components
Manually prepared
Mimic behaviour of the
real ones
15.10SERENE 2014 7
SimCo - workflow
15.10SERENE 2014 8
Selection of
tested
components
Generating of
mocks for
simulated
components
Generating of
proxy
components
Implementation
of simulated
components
Preparation of
testing data
Placing probes
Running
experiment
Collecting results
SimCo – example
Testing of car onboard
software
Applications – „Boxlets“
as components,
available from
repository
Measurements of
network communication
Speeding up of testing
by replacement of
original scheduler by its
simulation
15.10SERENE 2014 9
Model checking framework
Source code generated from model
Executable models in Python-like language
Automated translation to
C language
Java language
Based on Java Pathfinder
Special kind of JVM
All possible program paths are explored and
executed
15.10SERENE 2014 10
Case study – FTP protocol
Interaction of FTP server and client
Component application
Correct behaviour – requested data are recieved,
no exception appears
15.10SERENE 2014 11
Case study – Randomized
server responses
Server answers with random sequence of protocol
messages
communication should fail gracefuly
Error in client
When server fails at the end of data transfer, client
states in state transfering
SimCo uses random number generators
Cca 200 runs to discover exception
Java Pathfinder explores all paths
40 states visited before exception halts the execution
15.10SERENE 2014 12
Case study – cutting
responses
Response of server randomly shorted
SimCo discovers error every time – comparison of
expected data with recieved data
Java Pathfinder finds error too
When cutting of response hits also the header of
message
Cca 1200 states traversed
15.10SERENE 2014 13
Future work
Multithreading
SimCo performs serialization of processes cannot
detect race conditions or deadlocks
Inserting of measurement changes the conditions
when more threads are used
Monitoring of library calls
All monitors are only on the components interfaces
Automated integration testing after update
15.10SERENE 2014 14
Thank you for your
attention
15.10SERENE 2014 15

More Related Content

What's hot

Software Testing - Tool support for testing (CAST) - Mazenet Solution
Software Testing - Tool support for testing (CAST) - Mazenet SolutionSoftware Testing - Tool support for testing (CAST) - Mazenet Solution
Software Testing - Tool support for testing (CAST) - Mazenet SolutionMazenetsolution
 
Load test nfr gathering
Load test nfr gatheringLoad test nfr gathering
Load test nfr gatheringTomasz Fajks
 
Setup and run automated test framework for android application
Setup and run automated test framework for android applicationSetup and run automated test framework for android application
Setup and run automated test framework for android applicationKonstantin Natalukha
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation TestingArchana Krushnan
 
A Test Automation Framework
A Test Automation FrameworkA Test Automation Framework
A Test Automation FrameworkGregory Solovey
 
Automated Test Case Generation and Execution from Models
Automated Test Case Generation and Execution from ModelsAutomated Test Case Generation and Execution from Models
Automated Test Case Generation and Execution from ModelsDharmalingam Ganesan
 
PranathiSadhulaAutomationTester
PranathiSadhulaAutomationTesterPranathiSadhulaAutomationTester
PranathiSadhulaAutomationTesterPranathi Sadhula
 
API Virtualization: Mocking on Steroids
API Virtualization: Mocking on SteroidsAPI Virtualization: Mocking on Steroids
API Virtualization: Mocking on SteroidsSmartBear
 
Performance Requirement Gathering
Performance Requirement GatheringPerformance Requirement Gathering
Performance Requirement GatheringAtul Pant
 
Test automation principles, terminologies and implementations
Test automation principles, terminologies and implementationsTest automation principles, terminologies and implementations
Test automation principles, terminologies and implementationsSteven Li
 
Testing Tool Evaluation Criteria
Testing Tool Evaluation CriteriaTesting Tool Evaluation Criteria
Testing Tool Evaluation Criteriabasma_iti_1984
 
Model-based Testing of a Software Bus - Applied on Core Flight Executive
Model-based Testing of a Software Bus - Applied on Core Flight ExecutiveModel-based Testing of a Software Bus - Applied on Core Flight Executive
Model-based Testing of a Software Bus - Applied on Core Flight ExecutiveDharmalingam Ganesan
 
Final Automation Testing
Final Automation TestingFinal Automation Testing
Final Automation Testingpriya_trivedi
 
Selenium vs QTP/ UFT | Edureka
Selenium vs QTP/ UFT | EdurekaSelenium vs QTP/ UFT | Edureka
Selenium vs QTP/ UFT | EdurekaEdureka!
 
Software testing tools
Software testing toolsSoftware testing tools
Software testing toolsGaurav Paliwal
 
Real world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviewsReal world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviewsABSoft Trainings
 
Thesis presentation over Web Development
Thesis presentation over Web DevelopmentThesis presentation over Web Development
Thesis presentation over Web DevelopmentAman Khan
 
Automatic Test Case Generation
Automatic Test Case GenerationAutomatic Test Case Generation
Automatic Test Case GenerationAdnan Causevic
 

What's hot (20)

Software Testing - Tool support for testing (CAST) - Mazenet Solution
Software Testing - Tool support for testing (CAST) - Mazenet SolutionSoftware Testing - Tool support for testing (CAST) - Mazenet Solution
Software Testing - Tool support for testing (CAST) - Mazenet Solution
 
Load test nfr gathering
Load test nfr gatheringLoad test nfr gathering
Load test nfr gathering
 
Setup and run automated test framework for android application
Setup and run automated test framework for android applicationSetup and run automated test framework for android application
Setup and run automated test framework for android application
 
Introduction to Automation Testing
Introduction to Automation TestingIntroduction to Automation Testing
Introduction to Automation Testing
 
A Test Automation Framework
A Test Automation FrameworkA Test Automation Framework
A Test Automation Framework
 
Automated Test Case Generation and Execution from Models
Automated Test Case Generation and Execution from ModelsAutomated Test Case Generation and Execution from Models
Automated Test Case Generation and Execution from Models
 
PranathiSadhulaAutomationTester
PranathiSadhulaAutomationTesterPranathiSadhulaAutomationTester
PranathiSadhulaAutomationTester
 
API Virtualization: Mocking on Steroids
API Virtualization: Mocking on SteroidsAPI Virtualization: Mocking on Steroids
API Virtualization: Mocking on Steroids
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Performance Requirement Gathering
Performance Requirement GatheringPerformance Requirement Gathering
Performance Requirement Gathering
 
Test automation principles, terminologies and implementations
Test automation principles, terminologies and implementationsTest automation principles, terminologies and implementations
Test automation principles, terminologies and implementations
 
Testing Tool Evaluation Criteria
Testing Tool Evaluation CriteriaTesting Tool Evaluation Criteria
Testing Tool Evaluation Criteria
 
Model-based Testing of a Software Bus - Applied on Core Flight Executive
Model-based Testing of a Software Bus - Applied on Core Flight ExecutiveModel-based Testing of a Software Bus - Applied on Core Flight Executive
Model-based Testing of a Software Bus - Applied on Core Flight Executive
 
Final Automation Testing
Final Automation TestingFinal Automation Testing
Final Automation Testing
 
Selenium vs QTP/ UFT | Edureka
Selenium vs QTP/ UFT | EdurekaSelenium vs QTP/ UFT | Edureka
Selenium vs QTP/ UFT | Edureka
 
Software testing tools
Software testing toolsSoftware testing tools
Software testing tools
 
Real world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviewsReal world selenium resume which gets more job interviews
Real world selenium resume which gets more job interviews
 
PL/SQL unit testing with Ruby
PL/SQL unit testing with RubyPL/SQL unit testing with Ruby
PL/SQL unit testing with Ruby
 
Thesis presentation over Web Development
Thesis presentation over Web DevelopmentThesis presentation over Web Development
Thesis presentation over Web Development
 
Automatic Test Case Generation
Automatic Test Case GenerationAutomatic Test Case Generation
Automatic Test Case Generation
 

Viewers also liked

Considering Execution Environment Resilience: A White-Box Approach
Considering Execution Environment Resilience: A White-Box ApproachConsidering Execution Environment Resilience: A White-Box Approach
Considering Execution Environment Resilience: A White-Box ApproachSERENEWorkshop
 
SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"
SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"
SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"SERENEWorkshop
 
SERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENEWorkshop
 
SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...
SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...
SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...SERENEWorkshop
 
Risk Assessment Based Cloudification
Risk Assessment Based CloudificationRisk Assessment Based Cloudification
Risk Assessment Based CloudificationSERENEWorkshop
 
SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...
SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...
SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...SERENEWorkshop
 
SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...
SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...
SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...SERENEWorkshop
 
SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...
SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...
SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...SERENEWorkshop
 
SERENE 2014 School: System management overview
SERENE 2014 School: System management overviewSERENE 2014 School: System management overview
SERENE 2014 School: System management overviewSERENEWorkshop
 
SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...
SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...
SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...SERENEWorkshop
 
Biological Immunity and Software Resilience: Two Faces of the Same Coin?
Biological Immunity and Software Resilience: Two Faces of the Same Coin?Biological Immunity and Software Resilience: Two Faces of the Same Coin?
Biological Immunity and Software Resilience: Two Faces of the Same Coin?SERENEWorkshop
 
Engineering Cross-Layer Fault Tolerance in Many-Core Systems
Engineering Cross-Layer Fault Tolerance in Many-Core SystemsEngineering Cross-Layer Fault Tolerance in Many-Core Systems
Engineering Cross-Layer Fault Tolerance in Many-Core SystemsSERENEWorkshop
 
SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...
SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...
SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...SERENEWorkshop
 
SERENE 2014 School: System-Level Concurrent Error Detection
SERENE 2014 School: System-Level Concurrent Error Detection SERENE 2014 School: System-Level Concurrent Error Detection
SERENE 2014 School: System-Level Concurrent Error Detection SERENEWorkshop
 
Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...
Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...
Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...SERENEWorkshop
 
SERENE 2014 School: Challenges in Cyber-Physical Systems
SERENE 2014 School: Challenges in Cyber-Physical SystemsSERENE 2014 School: Challenges in Cyber-Physical Systems
SERENE 2014 School: Challenges in Cyber-Physical SystemsSERENEWorkshop
 
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...SERENEWorkshop
 
Towards Robust and Safe Autonomous Drones
Towards Robust and Safe Autonomous DronesTowards Robust and Safe Autonomous Drones
Towards Robust and Safe Autonomous DronesSERENEWorkshop
 
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...SERENEWorkshop
 

Viewers also liked (19)

Considering Execution Environment Resilience: A White-Box Approach
Considering Execution Environment Resilience: A White-Box ApproachConsidering Execution Environment Resilience: A White-Box Approach
Considering Execution Environment Resilience: A White-Box Approach
 
SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"
SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"
SERENE 2014 Workshop: Paper "Adaptive Domain-Specific Service Monitoring"
 
SERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the Cloud
 
SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...
SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...
SERENE 2014 Workshop: Paper "Advanced Modelling, Simulation and Verification ...
 
Risk Assessment Based Cloudification
Risk Assessment Based CloudificationRisk Assessment Based Cloudification
Risk Assessment Based Cloudification
 
SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...
SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...
SERENE 2014 Workshop: Paper "Combined Error Propagation Analysis and Runtime ...
 
SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...
SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...
SERENE 2014 Workshop: Paper "Using Instrumentation for Quality Assessment of ...
 
SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...
SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...
SERENE 2014 Workshop: Panel on "Views on Runtime Resilience Assessment of Dyn...
 
SERENE 2014 School: System management overview
SERENE 2014 School: System management overviewSERENE 2014 School: System management overview
SERENE 2014 School: System management overview
 
SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...
SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...
SERENE 2014 Workshop: Paper "Verification and Validation of a Pressure Contro...
 
Biological Immunity and Software Resilience: Two Faces of the Same Coin?
Biological Immunity and Software Resilience: Two Faces of the Same Coin?Biological Immunity and Software Resilience: Two Faces of the Same Coin?
Biological Immunity and Software Resilience: Two Faces of the Same Coin?
 
Engineering Cross-Layer Fault Tolerance in Many-Core Systems
Engineering Cross-Layer Fault Tolerance in Many-Core SystemsEngineering Cross-Layer Fault Tolerance in Many-Core Systems
Engineering Cross-Layer Fault Tolerance in Many-Core Systems
 
SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...
SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...
SERENE 2014 Workshop: Paper "Formal Fault Tolerance Analysis of Algorithms fo...
 
SERENE 2014 School: System-Level Concurrent Error Detection
SERENE 2014 School: System-Level Concurrent Error Detection SERENE 2014 School: System-Level Concurrent Error Detection
SERENE 2014 School: System-Level Concurrent Error Detection
 
Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...
Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...
Hot Stand-By Disaster Recovery Solutions for Ensuring the Resilience of Railw...
 
SERENE 2014 School: Challenges in Cyber-Physical Systems
SERENE 2014 School: Challenges in Cyber-Physical SystemsSERENE 2014 School: Challenges in Cyber-Physical Systems
SERENE 2014 School: Challenges in Cyber-Physical Systems
 
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
SERENE 2014 School: Measurement-Driven Resilience Design of Cloud-Based Cyber...
 
Towards Robust and Safe Autonomous Drones
Towards Robust and Safe Autonomous DronesTowards Robust and Safe Autonomous Drones
Towards Robust and Safe Autonomous Drones
 
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
SERENE 2014 School: Resilience in Cyber-Physical Systems: Challenges and Oppo...
 

Similar to SERENE 2014 Workshop: Paper "Simulation Testing and Model Checking: A Case Study Comparing these Approaches"

How to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty SoftwareHow to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty SoftwareParasoft
 
Web and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 UltimateWeb and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 UltimateAbhimanyu Singhal
 
Shuvam dutta | Performance tester
Shuvam dutta | Performance testerShuvam dutta | Performance tester
Shuvam dutta | Performance testerShuvam Dutta
 
RahulAnand_Testing_5.9years_exp_CV
RahulAnand_Testing_5.9years_exp_CVRahulAnand_Testing_5.9years_exp_CV
RahulAnand_Testing_5.9years_exp_CVRahul Anand
 
Service Virtualization: Delivering Complex Test Environments on Demand
Service Virtualization: Delivering Complex Test Environments on DemandService Virtualization: Delivering Complex Test Environments on Demand
Service Virtualization: Delivering Complex Test Environments on DemandErika Barron
 
Software Testing includes Performance testing with Load Runner and the JMeter
Software Testing includes Performance testing with Load Runner and the JMeter Software Testing includes Performance testing with Load Runner and the JMeter
Software Testing includes Performance testing with Load Runner and the JMeter Hima Bindu Kosuru
 
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16AppDynamics
 
Creating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
Creating Complete Test Environments in the Cloud: Skytap & Parasoft WebinarCreating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
Creating Complete Test Environments in the Cloud: Skytap & Parasoft WebinarSkytap Cloud
 
Performance Testing REST APIs
Performance Testing REST APIsPerformance Testing REST APIs
Performance Testing REST APIsJason Weden
 
How to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeterHow to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeterInfluxData
 
Resumeupdated
ResumeupdatedResumeupdated
Resumeupdatedsudha A
 
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip BannonSoft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip BannonDavid O'Dowd
 
Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...
Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...
Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...VMware Tanzu
 
Software Testing Tecniques
Software Testing TecniquesSoftware Testing Tecniques
Software Testing Tecniquesersanbilik
 

Similar to SERENE 2014 Workshop: Paper "Simulation Testing and Model Checking: A Case Study Comparing these Approaches" (20)

How to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty SoftwareHow to Avoid Continuously Delivering Faulty Software
How to Avoid Continuously Delivering Faulty Software
 
Web and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 UltimateWeb and load testing with Visual Studio 2010 Ultimate
Web and load testing with Visual Studio 2010 Ultimate
 
Shuvam dutta | Performance tester
Shuvam dutta | Performance testerShuvam dutta | Performance tester
Shuvam dutta | Performance tester
 
Shuvam dutta
Shuvam duttaShuvam dutta
Shuvam dutta
 
RahulAnand_Testing_5.9years_exp_CV
RahulAnand_Testing_5.9years_exp_CVRahulAnand_Testing_5.9years_exp_CV
RahulAnand_Testing_5.9years_exp_CV
 
CV
CVCV
CV
 
Service Virtualization: Delivering Complex Test Environments on Demand
Service Virtualization: Delivering Complex Test Environments on DemandService Virtualization: Delivering Complex Test Environments on Demand
Service Virtualization: Delivering Complex Test Environments on Demand
 
Software Testing includes Performance testing with Load Runner and the JMeter
Software Testing includes Performance testing with Load Runner and the JMeter Software Testing includes Performance testing with Load Runner and the JMeter
Software Testing includes Performance testing with Load Runner and the JMeter
 
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
How CapitalOne Transformed DevTest or Continuous Delivery - AppSphere16
 
Creating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
Creating Complete Test Environments in the Cloud: Skytap & Parasoft WebinarCreating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
Creating Complete Test Environments in the Cloud: Skytap & Parasoft Webinar
 
Performance Testing REST APIs
Performance Testing REST APIsPerformance Testing REST APIs
Performance Testing REST APIs
 
How to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeterHow to Improve Performance Testing Using InfluxDB and Apache JMeter
How to Improve Performance Testing Using InfluxDB and Apache JMeter
 
Resumeupdated
ResumeupdatedResumeupdated
Resumeupdated
 
Performance Engineering Basics
Performance Engineering BasicsPerformance Engineering Basics
Performance Engineering Basics
 
Testing_with_TestComplete
Testing_with_TestCompleteTesting_with_TestComplete
Testing_with_TestComplete
 
Qtp basic
Qtp basicQtp basic
Qtp basic
 
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip BannonSoft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
Soft Test Ireland - Introduction to Jakarta Jmeter - Philip Bannon
 
Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...
Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...
Automated Virtualized Testing (AVT) with Docker, Kubernetes, WireMock and Gat...
 
Gowtham_resume
Gowtham_resumeGowtham_resume
Gowtham_resume
 
Software Testing Tecniques
Software Testing TecniquesSoftware Testing Tecniques
Software Testing Tecniques
 

Recently uploaded

Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptxanandsmhk
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoSérgio Sacani
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsSérgio Sacani
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyDrAnita Sharma
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPirithiRaju
 
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡anilsa9823
 
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...anilsa9823
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)Areesha Ahmad
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptxRajatChauhan518211
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bSérgio Sacani
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticssakshisoni2385
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfrohankumarsinghrore1
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)Areesha Ahmad
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxgindu3009
 
Biopesticide (2).pptx .This slides helps to know the different types of biop...
Biopesticide (2).pptx  .This slides helps to know the different types of biop...Biopesticide (2).pptx  .This slides helps to know the different types of biop...
Biopesticide (2).pptx .This slides helps to know the different types of biop...RohitNehra6
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000Sapana Sha
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPirithiRaju
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)Areesha Ahmad
 
Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )aarthirajkumar25
 

Recently uploaded (20)

Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptxUnlocking  the Potential: Deep dive into ocean of Ceramic Magnets.pptx
Unlocking the Potential: Deep dive into ocean of Ceramic Magnets.pptx
 
Isotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on IoIsotopic evidence of long-lived volcanism on Io
Isotopic evidence of long-lived volcanism on Io
 
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroidsHubble Asteroid Hunter III. Physical properties of newly found asteroids
Hubble Asteroid Hunter III. Physical properties of newly found asteroids
 
fundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomologyfundamental of entomology all in one topics of entomology
fundamental of entomology all in one topics of entomology
 
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdfPests of cotton_Sucking_Pests_Dr.UPR.pdf
Pests of cotton_Sucking_Pests_Dr.UPR.pdf
 
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service  🪡
CALL ON ➥8923113531 🔝Call Girls Kesar Bagh Lucknow best Night Fun service 🪡
 
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
Lucknow 💋 Russian Call Girls Lucknow Finest Escorts Service 8923113531 Availa...
 
GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)GBSN - Microbiology (Unit 2)
GBSN - Microbiology (Unit 2)
 
Green chemistry and Sustainable development.pptx
Green chemistry  and Sustainable development.pptxGreen chemistry  and Sustainable development.pptx
Green chemistry and Sustainable development.pptx
 
The Philosophy of Science
The Philosophy of ScienceThe Philosophy of Science
The Philosophy of Science
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceuticsPulmonary drug delivery system M.pharm -2nd sem P'ceutics
Pulmonary drug delivery system M.pharm -2nd sem P'ceutics
 
Forensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdfForensic Biology & Its biological significance.pdf
Forensic Biology & Its biological significance.pdf
 
GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)GBSN - Biochemistry (Unit 1)
GBSN - Biochemistry (Unit 1)
 
Presentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptxPresentation Vikram Lander by Vedansh Gupta.pptx
Presentation Vikram Lander by Vedansh Gupta.pptx
 
Biopesticide (2).pptx .This slides helps to know the different types of biop...
Biopesticide (2).pptx  .This slides helps to know the different types of biop...Biopesticide (2).pptx  .This slides helps to know the different types of biop...
Biopesticide (2).pptx .This slides helps to know the different types of biop...
 
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 60009654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
9654467111 Call Girls In Raj Nagar Delhi Short 1500 Night 6000
 
Pests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdfPests of mustard_Identification_Management_Dr.UPR.pdf
Pests of mustard_Identification_Management_Dr.UPR.pdf
 
GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)GBSN - Microbiology (Unit 1)
GBSN - Microbiology (Unit 1)
 
Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )Recombination DNA Technology (Nucleic Acid Hybridization )
Recombination DNA Technology (Nucleic Acid Hybridization )
 

SERENE 2014 Workshop: Paper "Simulation Testing and Model Checking: A Case Study Comparing these Approaches"

  • 1. Defect discovery by simulation- based testing and model checking SERENE 2014, BudapestRichard Lipka Marek Paška Tomáš Potužák
  • 2. Motivation and goals Software components as standard assembly units Stored in a repository Described in terms of Provided services Extra-functional properties ? State ? Testing component-based application Testing of components + testing of finished assembly Replacement of human testers when it is possible Speedup of testing after update 15.10SERENE 2014 2
  • 3. Basic concept Technologies Java + OSGi (Blueprint extension) Code generation + Java Pathfinder Simulation for Testing of software functionality Verifiing extra-functional properties Model checking for Proving of properties 15.10SERENE 2014 3
  • 4. SimCo – simulation testing Using of simulated components for Replacing human testers Oracles when real components are too slow or not available Simulation of the environment Hybrid simulation Simulated and real components run in the same environment Non-invasive testing No changes in the real components the same binaries as in production system 15.10SERENE 2014 4
  • 5. SimCo and use cases Use cases as a basic definition of application behaviours Good base for test from the user point of view Described in semi-structured way graph representation of application behaviour Test capable of Observing correct sequence of action Observing data (correct values, data amount) Checking properties (latency) 15.10SERENE 2014 5
  • 6. SimCo and use cases 15.10SERENE 2014 6
  • 7. SimCo – Basic structure Core components Calendar, results collecting Transparent proxy Automatically generated Runtime or source texts Observation, network simulation Simulated components Manually prepared Mimic behaviour of the real ones 15.10SERENE 2014 7
  • 8. SimCo - workflow 15.10SERENE 2014 8 Selection of tested components Generating of mocks for simulated components Generating of proxy components Implementation of simulated components Preparation of testing data Placing probes Running experiment Collecting results
  • 9. SimCo – example Testing of car onboard software Applications – „Boxlets“ as components, available from repository Measurements of network communication Speeding up of testing by replacement of original scheduler by its simulation 15.10SERENE 2014 9
  • 10. Model checking framework Source code generated from model Executable models in Python-like language Automated translation to C language Java language Based on Java Pathfinder Special kind of JVM All possible program paths are explored and executed 15.10SERENE 2014 10
  • 11. Case study – FTP protocol Interaction of FTP server and client Component application Correct behaviour – requested data are recieved, no exception appears 15.10SERENE 2014 11
  • 12. Case study – Randomized server responses Server answers with random sequence of protocol messages communication should fail gracefuly Error in client When server fails at the end of data transfer, client states in state transfering SimCo uses random number generators Cca 200 runs to discover exception Java Pathfinder explores all paths 40 states visited before exception halts the execution 15.10SERENE 2014 12
  • 13. Case study – cutting responses Response of server randomly shorted SimCo discovers error every time – comparison of expected data with recieved data Java Pathfinder finds error too When cutting of response hits also the header of message Cca 1200 states traversed 15.10SERENE 2014 13
  • 14. Future work Multithreading SimCo performs serialization of processes cannot detect race conditions or deadlocks Inserting of measurement changes the conditions when more threads are used Monitoring of library calls All monitors are only on the components interfaces Automated integration testing after update 15.10SERENE 2014 14
  • 15. Thank you for your attention 15.10SERENE 2014 15