Automated Testing of Server Side Software Components - PowerPoint PPT Presentation

1 / 24
About This Presentation
Title:

Automated Testing of Server Side Software Components

Description:

Prototypes architecture and implementation. Evaluation and tests. Future work and ... Don't reinvent the wheel use existing technologies, tools and libraries ... – PowerPoint PPT presentation

Number of Views:73
Avg rating:3.0/5.0
Slides: 25
Provided by: francescob
Category:

less

Transcript and Presenter's Notes

Title: Automated Testing of Server Side Software Components


1
Automated Testing of Server Side Software
Components
  • Francesco Bongiovanni

2
Presentation outline
  • Introduction
  • Motivation
  • Background
  • Problem statement
  • Proposed approach
  • General overview
  • Prototypes architecture and implementation
  • Evaluation and tests
  • Future work and conclusion
  • Questions

3
Introduction Motivation I
  • A correct concise definition
  • Testing is the process of executing a program
    with the intent of finding errors
  • Between 20 and 60 billion
  • Software testing is everywhere
  • 50 of time and cost
  • Debugging time development time

4
Introduction Motivation II
  • Evaluate and improve software quality
  • Software maintenance and software evolution is
    easier
  • Todays applications are large and complex
  • Need for automating the testing process

Courtesy of Gerard Meszaros, used with permission
5
Introduction Background I
  • Shopping Dossier
  • Middleware framework
  • Gives access to different business logics

Dossier logic
Shopping Dossier
Booking logic
...
6
Introduction Background II
  • Current architecture
  • EJB based components
  • Future architecture
  • Web Services based

7
Introduction Problem Statement I
  • Testing such framework is complex
  • Current tests include higher level layers
  • A test scenario
  • Can involve different business logics
  • Components can be assembled into a specific flow
    of actions
  • Can include complex data
  • Components have different data structures
  • Can have conditional logic
  • In order to simulate real use cases
  • Can be exercised with different test inputs
  • Can be re-executed in a regression test campaign

8
Proposed Approach General overview I
  • Treating a test scenario as a BPEL process
  • Advantages of using WS-BPEL
  • Powerful language
  • Allow to create complex sequence of actions
  • Executable
  • ...

9
Proposed Approach General overview II
BPEL Process
Receive
Assign
WSDL
WSDL
WSDL
WSDL
Invoke
Invoke
WSDL
WSDL
Reply
10
Proposed Approach General overview III
  • Core components
  • After investigations

Web Services Testing tool
Eclipse BPEL Designer
SoapUI
BPEL engine
Apache Ode
11
Proposed Approach General overview IV
Web Services Testing tool (SoapUI)
Project ___TestSuite 1 ________TestCase 1 ....
BPEL engine (Apache Ode)
BPEL Process
12
Proposed Approach General overview V
FAILED
13
Proposed Approach Prototypes I
Web Services Testing tool (SoapUI)
SoapUI Extension
BPEL engine (Apache Ode)
BPEL Monitoring UI
SoapWUI
14
Proposed Approach Prototypes II
  • SoapUI Extension
  • Web Service exposing several methods
  • Get Projects
  • Get Test suites
  • Run Test suite
  • ...
  • Implemented using
  • Apache Axis2
  • Apache AXIOM
  • SoapUI APIs

15
Proposed Approach Prototypes III
  • BPEL Monitoring Web UI
  • Uses Apache Odes Web Services
  • ProcessManagement
  • InstanceManagement
  • Implemented using
  • Adobe Flex 3
  • MXML
  • ActionScript 3

16
Proposed Approach Prototypes IV
  • BPEL Monitoring Web UI

17
Proposed Approach Prototypes V
  • SoapWUI
  • Uses the SoapUI Extension Web Service
  • Implemented using
  • Adobe Flex 3
  • MXML
  • ActionScript 3

18
Proposed Approach Prototypes VI
  • Visual Data Representation
  • Using Flare or RaVis
  • XML variables
  • SOAP messages

19
Evaluation and tests I
  • Flexible
  • Easy to use
  • Ability to control the granularity of the
    complexity of a scenario
  • Powerful assertions mechanisms
  • Maintainable by separating the sequence flow
    and the tests
  • Automation execution fully automatic
  • Based on open standards
  • Performance
  • Indirect benefit from StAx based AXIOM

20
Evaluation and tests II
  • Testing such system is not trivial
  • The SoapUI extension was tested using SoapUI,
    Junit and a remote debugger
  • Load tests
  • Error injection
  • Different assertions
  • SLA
  • SimpleContains
  • ...
  • The Flex Web applications were tested using
    FlexUnit

21
Future improvements I
  • Deriving test cases and test data from the BPEL
    process
  • Automatic verification of BPEL processes using
    Model Checkers
  • Requires a formal representation of BPEL and XML
    Schema

Test data generator
Web Services Testing tool (SoapUI)
Test case generator
22
Future improvements II
  • Distributed testing

23
Conclusion
  • Web Services are suitable to automate tests
    thanks to WSDL,XML Schema...
  • Dont reinvent the wheel use existing
    technologies, tools and libraries
  • BPEL is valuable since it enables the modelling
    and execution of desired sequences of actions
  • Testers can benefit from SoapUIs flexibility and
    extensibility, while analysts take advantage from
    an RIA technology such as Adobe Flex
  • Improves the collaboration of testers and
    business analysts

24
Questions
  • Thank you for your attention
  • ?
Write a Comment
User Comments (0)
About PowerShow.com