SlideShare a Scribd company logo
1 of 33
M . R I F A D .
P R I Y A N K A P E R E R A .
Model–driven System Testing
of Service Oriented Systems.
Outline
Introduction
Basic concepts.
Testing Methodology.
Test Meta Model.
Test code generation.
Introduction
This paper presents an approach for model–driven
system testing of service oriented systems.
presents test model transformation and adapter
concept.
Testmodels can be statically checked and directly
transformed into executable test code via a
metamodel.
The connection to the system services under test is
established via flexible adapters that can be
automatically generated in many cases.
This flexible adapter concept allows for defining
executable test–model integrated with the
requirements specification in a very early stage of the
system development process.
Basic concepts
Basic structure of the TTS artifacts.
The system model: Describes the system
requirements at business level.
The system implementation: Also called the system
under test (SUT) provides services callable by the
test implementation.
The test model: Contains the test case specifications
developed in an incremental process. Test stories can
be seen as high level descriptions of the test
requirements.
The test implementation:
Generated by a compiler which transforms test story
files into source code files, so called test code, of the
execution language. Service adapters make the
abstract service calls. Will be discussed in more detail.
Testing Methodology
The first step in the development process is the
iterative design of a test and a system model.
Adapters will be generated.
Test code generation and test execution by test
engine .
Platform Independent model.
META MODEL
The metamodel for system and test modeling of
service oriented systems has been defined as UML
profile.
a) System Metamodel.
b) Test meta model.
System meta model
The System stereotype represents the whole test
system including services and actors.
The abstract stereotype Service generalizes System
Service-service with a business functionality.
Configuration Service-Need for testing purposes.
The stereotype Actor represents the roles which can
invoke a service.
The abstract stereotype Parameter generalizes the
stereotypes for input and output parameters.
Sample Booking system.
Test Meta model
The stereotype Servicecall refers to a service invoked
by an actor instance of type Caller with concrete
input and output values of type Value. It also has a
timeout after which it is canceled.
The stereotype Reference refers to other stories
which can be called within a test story
The stereotype Assertion allows for defining
assertions for computing the test verdict.
The stereotype ParallelTask allows for executing the
same flow a specific number of times (tasknumber)
in parallel.
Sample Test story
Test-code generation
• Consistency and coverage checks
• Adapter
• Code generation
• Test execution
• Architecture
Consistency and coverage checks
• Schema for test model defined in the meta-
model.
• Consistency and coverage rules are part of the
schema.
• TSChecker component performs the
validation.
• Checks are coded in OCL.
Consistency and coverage
checks contd.
• Coverage rules – e.g.: compare the scenarios
covered in the test model wrt system model.
• Consistency rules – e.g.:
Adapter
• Adapter invokes the services in SUT.
• Test runner passes the arguments and calls
the generated Adapter.
Adapter contd.
• Each service call in invoked asynchronously in
a separate thread.
• Invoke() call in the abstract adapter is a
wrapper around the private adapter methods
in the concrete implementations.
• Service proxies may be generated using WSDL
Adapter contd.
Code generation
• Test-model to test-code transformation.
• Nodes in the test-model are visited and
generates code based on details present in the
nodes, parameters and connections.
• TSCompiler translates test stories defined in
the model to test code.
Test execution
• Test runner parses the TestSequence in the
test-model invokes the test stories in order.
Test execution contd.
• TestData stored in a repository.
• Test-model or test runner should reference
the repository.
Architecture
Architecture contd.
• TSChecker
 Validates the test-model and system-model
against meta-model and each other.
• TSCompiler
 Transform test model into programming
language code
• TSTestCotroller
 Test executing life cycle handler.
Architecture contd.
• TestSequence
– Execution order of the test stories.
• TestLog
– Logging API
• TestReport
– Result reporting framework
Discussion
 Authors plan to automate test data generation.
 Test mode may be made to generate from the
system model ?
 Integration with IDEs and test and logging and
reporting frameworks ?
Thank you

More Related Content

What's hot

Simple Railroad Command Protocol
Simple Railroad Command ProtocolSimple Railroad Command Protocol
Simple Railroad Command ProtocolAnkit Singh
 
Unit test documentation
Unit test documentationUnit test documentation
Unit test documentationAnjan Debnath
 
NUnit Features Presentation
NUnit Features PresentationNUnit Features Presentation
NUnit Features PresentationShir Brass
 
03 test specification and execution
03   test specification and execution03   test specification and execution
03 test specification and executionClemens Reijnen
 
What Is JMeter?
What Is JMeter?What Is JMeter?
What Is JMeter?QATestLab
 
Writing Acceptance Tests Using Fitnesse
Writing Acceptance Tests Using FitnesseWriting Acceptance Tests Using Fitnesse
Writing Acceptance Tests Using FitnesseFacundo Farias
 
Unit testing with NUnit
Unit testing with NUnitUnit testing with NUnit
Unit testing with NUnitkleinron
 
Software testing
Software testingSoftware testing
Software testingashamarsha
 
Anypoint mq acknowledgement mode
Anypoint mq acknowledgement modeAnypoint mq acknowledgement mode
Anypoint mq acknowledgement modeSon Nguyen
 
QTP&UFT Automation Framework
QTP&UFT Automation FrameworkQTP&UFT Automation Framework
QTP&UFT Automation FrameworkYu Tao Zhang
 
Beginners - Get Started With Unit Testing in .NET
Beginners - Get Started With Unit Testing in .NETBeginners - Get Started With Unit Testing in .NET
Beginners - Get Started With Unit Testing in .NETBaskar K
 
Unit Testing Fundamentals
Unit Testing FundamentalsUnit Testing Fundamentals
Unit Testing FundamentalsRichard Paul
 
Unit testing and test driven development using vs
Unit testing and test driven development using vsUnit testing and test driven development using vs
Unit testing and test driven development using vsAbhimanyu Singhal
 
Introduction to jmeter
Introduction to jmeterIntroduction to jmeter
Introduction to jmetertest test
 
Unit Test Virtualization: Optimizing Testing Time
Unit Test Virtualization: Optimizing Testing TimeUnit Test Virtualization: Optimizing Testing Time
Unit Test Virtualization: Optimizing Testing Timejon_bell
 

What's hot (20)

Unit testing
Unit testingUnit testing
Unit testing
 
Simple Railroad Command Protocol
Simple Railroad Command ProtocolSimple Railroad Command Protocol
Simple Railroad Command Protocol
 
Unit test documentation
Unit test documentationUnit test documentation
Unit test documentation
 
NUnit Features Presentation
NUnit Features PresentationNUnit Features Presentation
NUnit Features Presentation
 
03 test specification and execution
03   test specification and execution03   test specification and execution
03 test specification and execution
 
Mule expression
Mule expressionMule expression
Mule expression
 
What Is JMeter?
What Is JMeter?What Is JMeter?
What Is JMeter?
 
Writing Acceptance Tests Using Fitnesse
Writing Acceptance Tests Using FitnesseWriting Acceptance Tests Using Fitnesse
Writing Acceptance Tests Using Fitnesse
 
Unit testing with NUnit
Unit testing with NUnitUnit testing with NUnit
Unit testing with NUnit
 
Automation tips
Automation tipsAutomation tips
Automation tips
 
Software testing
Software testingSoftware testing
Software testing
 
Anypoint mq acknowledgement mode
Anypoint mq acknowledgement modeAnypoint mq acknowledgement mode
Anypoint mq acknowledgement mode
 
Workshop unit test
Workshop   unit testWorkshop   unit test
Workshop unit test
 
QTP&UFT Automation Framework
QTP&UFT Automation FrameworkQTP&UFT Automation Framework
QTP&UFT Automation Framework
 
Beginners - Get Started With Unit Testing in .NET
Beginners - Get Started With Unit Testing in .NETBeginners - Get Started With Unit Testing in .NET
Beginners - Get Started With Unit Testing in .NET
 
Automation testing
Automation testingAutomation testing
Automation testing
 
Unit Testing Fundamentals
Unit Testing FundamentalsUnit Testing Fundamentals
Unit Testing Fundamentals
 
Unit testing and test driven development using vs
Unit testing and test driven development using vsUnit testing and test driven development using vs
Unit testing and test driven development using vs
 
Introduction to jmeter
Introduction to jmeterIntroduction to jmeter
Introduction to jmeter
 
Unit Test Virtualization: Optimizing Testing Time
Unit Test Virtualization: Optimizing Testing TimeUnit Test Virtualization: Optimizing Testing Time
Unit Test Virtualization: Optimizing Testing Time
 

Similar to Model-driven system testing of service oriented systems

Testing Frameworks
Testing FrameworksTesting Frameworks
Testing FrameworksMoataz Nabil
 
Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0Ishara Amarasekera
 
Modeling and Testing Dovetail in MagicDraw
Modeling and Testing Dovetail in MagicDrawModeling and Testing Dovetail in MagicDraw
Modeling and Testing Dovetail in MagicDrawGregory Solovey
 
12 Rational Solo Pruebas 2009
12 Rational Solo Pruebas 200912 Rational Solo Pruebas 2009
12 Rational Solo Pruebas 2009Pepe
 
Java Unit Test - JUnit
Java Unit Test - JUnitJava Unit Test - JUnit
Java Unit Test - JUnitAktuğ Urun
 
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Lionel Briand
 
justin presentation upload PPT june 19
justin presentation upload PPT june 19justin presentation upload PPT june 19
justin presentation upload PPT june 19techweb08
 
justin for ppt1 by browse button
justin for ppt1 by browse buttonjustin for ppt1 by browse button
justin for ppt1 by browse buttontechweb08
 
upload ppt by browse button
upload ppt by browse buttonupload ppt by browse button
upload ppt by browse buttontechweb08
 
justin presentation Slideshare PPT upload June 25 Final one
justin presentation Slideshare PPT upload June 25 Final onejustin presentation Slideshare PPT upload June 25 Final one
justin presentation Slideshare PPT upload June 25 Final onetechweb08
 
upload ppt1 by browse button
upload ppt1 by browse buttonupload ppt1 by browse button
upload ppt1 by browse buttontechweb08
 
upload ppt by browse button
upload ppt by browse buttonupload ppt by browse button
upload ppt by browse buttontechweb08
 

Similar to Model-driven system testing of service oriented systems (20)

Testing Frameworks
Testing FrameworksTesting Frameworks
Testing Frameworks
 
Presentation Of Mbt Tools
Presentation Of Mbt ToolsPresentation Of Mbt Tools
Presentation Of Mbt Tools
 
Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0
 
Modeling and Testing Dovetail in MagicDraw
Modeling and Testing Dovetail in MagicDrawModeling and Testing Dovetail in MagicDraw
Modeling and Testing Dovetail in MagicDraw
 
12 Rational Solo Pruebas 2009
12 Rational Solo Pruebas 200912 Rational Solo Pruebas 2009
12 Rational Solo Pruebas 2009
 
Java Unit Test - JUnit
Java Unit Test - JUnitJava Unit Test - JUnit
Java Unit Test - JUnit
 
Sassy
SassySassy
Sassy
 
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...Automated and Scalable Solutions for Software Testing: The Essential Role of ...
Automated and Scalable Solutions for Software Testing: The Essential Role of ...
 
Paper CS
Paper CSPaper CS
Paper CS
 
alkatest7
alkatest7alkatest7
alkatest7
 
justin presentation upload PPT june 19
justin presentation upload PPT june 19justin presentation upload PPT june 19
justin presentation upload PPT june 19
 
justin for ppt1 by browse button
justin for ppt1 by browse buttonjustin for ppt1 by browse button
justin for ppt1 by browse button
 
Paper Ps
Paper PsPaper Ps
Paper Ps
 
upload ppt by browse button
upload ppt by browse buttonupload ppt by browse button
upload ppt by browse button
 
justin presentation Slideshare PPT upload June 25 Final one
justin presentation Slideshare PPT upload June 25 Final onejustin presentation Slideshare PPT upload June 25 Final one
justin presentation Slideshare PPT upload June 25 Final one
 
Paper Ps
Paper PsPaper Ps
Paper Ps
 
upload ppt1 by browse button
upload ppt1 by browse buttonupload ppt1 by browse button
upload ppt1 by browse button
 
Paper Ps
Paper PsPaper Ps
Paper Ps
 
Paper Ps
Paper PsPaper Ps
Paper Ps
 
upload ppt by browse button
upload ppt by browse buttonupload ppt by browse button
upload ppt by browse button
 

Recently uploaded

Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 

Recently uploaded (20)

Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 

Model-driven system testing of service oriented systems

  • 1. M . R I F A D . P R I Y A N K A P E R E R A . Model–driven System Testing of Service Oriented Systems.
  • 3. Introduction This paper presents an approach for model–driven system testing of service oriented systems. presents test model transformation and adapter concept. Testmodels can be statically checked and directly transformed into executable test code via a metamodel.
  • 4. The connection to the system services under test is established via flexible adapters that can be automatically generated in many cases. This flexible adapter concept allows for defining executable test–model integrated with the requirements specification in a very early stage of the system development process.
  • 5. Basic concepts Basic structure of the TTS artifacts.
  • 6. The system model: Describes the system requirements at business level. The system implementation: Also called the system under test (SUT) provides services callable by the test implementation. The test model: Contains the test case specifications developed in an incremental process. Test stories can be seen as high level descriptions of the test requirements.
  • 7. The test implementation: Generated by a compiler which transforms test story files into source code files, so called test code, of the execution language. Service adapters make the abstract service calls. Will be discussed in more detail.
  • 9. The first step in the development process is the iterative design of a test and a system model. Adapters will be generated. Test code generation and test execution by test engine .
  • 11. META MODEL The metamodel for system and test modeling of service oriented systems has been defined as UML profile. a) System Metamodel. b) Test meta model.
  • 13. The System stereotype represents the whole test system including services and actors. The abstract stereotype Service generalizes System Service-service with a business functionality. Configuration Service-Need for testing purposes.
  • 14. The stereotype Actor represents the roles which can invoke a service. The abstract stereotype Parameter generalizes the stereotypes for input and output parameters.
  • 17. The stereotype Servicecall refers to a service invoked by an actor instance of type Caller with concrete input and output values of type Value. It also has a timeout after which it is canceled. The stereotype Reference refers to other stories which can be called within a test story
  • 18. The stereotype Assertion allows for defining assertions for computing the test verdict. The stereotype ParallelTask allows for executing the same flow a specific number of times (tasknumber) in parallel.
  • 20. Test-code generation • Consistency and coverage checks • Adapter • Code generation • Test execution • Architecture
  • 21. Consistency and coverage checks • Schema for test model defined in the meta- model. • Consistency and coverage rules are part of the schema. • TSChecker component performs the validation. • Checks are coded in OCL.
  • 22. Consistency and coverage checks contd. • Coverage rules – e.g.: compare the scenarios covered in the test model wrt system model. • Consistency rules – e.g.:
  • 23. Adapter • Adapter invokes the services in SUT. • Test runner passes the arguments and calls the generated Adapter.
  • 24. Adapter contd. • Each service call in invoked asynchronously in a separate thread. • Invoke() call in the abstract adapter is a wrapper around the private adapter methods in the concrete implementations. • Service proxies may be generated using WSDL
  • 26. Code generation • Test-model to test-code transformation. • Nodes in the test-model are visited and generates code based on details present in the nodes, parameters and connections. • TSCompiler translates test stories defined in the model to test code.
  • 27. Test execution • Test runner parses the TestSequence in the test-model invokes the test stories in order.
  • 28. Test execution contd. • TestData stored in a repository. • Test-model or test runner should reference the repository.
  • 30. Architecture contd. • TSChecker  Validates the test-model and system-model against meta-model and each other. • TSCompiler  Transform test model into programming language code • TSTestCotroller  Test executing life cycle handler.
  • 31. Architecture contd. • TestSequence – Execution order of the test stories. • TestLog – Logging API • TestReport – Result reporting framework
  • 32. Discussion  Authors plan to automate test data generation.  Test mode may be made to generate from the system model ?  Integration with IDEs and test and logging and reporting frameworks ?