SlideShare une entreprise Scribd logo
1  sur  43
Télécharger pour lire hors ligne
© OPITZ CONSULTING GmbH 2016 Slide 1Test-Driven Cloud Development
September 2016
Test-Driven Cloud Development
Danilo Schmiedel
Solution Architect | Oracle ACE Director
OPITZ CONSULTING Deutschland GmbH
Sven Bernhardt
Solution Architect | Oracle ACE
OPITZ CONSULTING Deutschland GmbH
Using Oracle SOA Cloud Service and Oracle Developer Cloud Service
© OPITZ CONSULTING GmbH 2016 Slide 2Test-Driven Cloud Development
Oracle SOA 12c @ Opitz
- First Oracle SOA / BPEL project in 2006
- Implemented multiple 10g to 11g projects
- Wide knowledge with Side-by-Side
upgrades based on Enterprise
Deployment Guide
n Oracle Platinum Partner, founded in 1990,
located in Germany and Poland
n Specialized in many products across the Oracle
portfolio
n 2 Oracle ACE Directors and 2 Oracle ACEs
n Recognized as one of the leading Oracle
Fusion Middleware Partners
n 2015 & 2014: BPM Partner Community Award
2010: Fusion Middleware Award
2008 – 2010: EMEA SOA Community Award
About OPITZ CONSULTING
- Experienced with In-Place Upgrades
long running / stateful processes with
minimal downtime
- Products included in upgraded
solutions:
- Oracle SOA Suite12c
- Oracle OSB 12c
- Oracle BAM 12c
© OPITZ CONSULTING GmbH 2016 Slide 3Test-Driven Cloud Development
Agenda
1. Why test-driven development?
2. Oracle SOA CS and Oracle Developer CS
3. Testing in (cloud) integration projects
4. OC Testframework
5. Demo
6. Benefits
© OPITZ CONSULTING GmbH 2016 Slide 4Test-Driven Cloud Development
1 Why test-driven development?
© OPITZ CONSULTING GmbH 2016 Slide 5Test-Driven Cloud Development
Case Study #1 - Simplified Solution Architecture
Webshop
ERP
Warehouses Carriers Suppliers
Integration Platform (SOA Suite)
Customer Service
© OPITZ CONSULTING GmbH 2016 Slide 6Test-Driven Cloud Development
Case Study #1 - Problem Cloud
Transparency
Technical Monitoring
Schema Validation
Handling of technical faults
Handling of business faultsHuman Intervention
Versioning
Re-usability
System Integration
Adapter
Different Protocols
ScalabilityContinuity
Standardization
Time-to-Market
© OPITZ CONSULTING GmbH 2016 Slide 7Test-Driven Cloud Development
Case Study #1 – Team Structure
ERP Team MW Team QA Team
5 People 9 People 6 People
© OPITZ CONSULTING GmbH 2016 Slide 8Test-Driven Cloud Development
2015 2016Jan Mrz Mai Jul Sep Nov 2016 Mrz Mai
GoLive:	Foundation	Components	1
Feb	15,	2015
GoLive:	Foundation	Components	2
Mrz	22,	2015
GoLive:	Release	1
Apr	12,	2015
GoLive:	Release	2
Mai	24,	2015
GoLive:	Release	3
Jul	19,	2015
GoLive:	Release	4
Dez	7,	2015
GoLive:	Release	5
Jan	20,	2016
GoLive:	Release	6
Apr	19,	2016
GoLive:	Release	7
Mai	3,	2016
Project	Kick	off	(incl.	Specification)
Jan	5,	2015
Development	of	all	Releases	completed
Sep	18,	2015
40	days QA	of	Release	1
30	days QA	of	Release	2
40	days QA	of	Release	3
100	days QA	of	Release	4
32	days QA	of	Release	5
63	days QA	of	Release	6
9	days QA	of	Release	7
~	8	month
© OPITZ CONSULTING GmbH 2016 Slide 9Test-Driven Cloud Development
Case Study #1 – Project Approach (Target)
n Target approach was agile
n Small, incremental deliverables
n In-time business value generation
Source: http://blog.procademysoftware.com/agile-project-
management/
Source: http://www.commonplaces.com/blog/agile-vs-
waterfall-how-to-approach-your-web-development-project/
© OPITZ CONSULTING GmbH 2016 Slide 10Test-Driven Cloud Development
Case Study #1 – Project Approach (Reality)
n Static and cumbersome
n Insufficient test automation and no budget for DevOps
n Releases became too complex
Source: http://blog.procademysoftware.com/agile-
project-management/
Source: http://www.commonplaces.com/blog/agile-vs-waterfall-
how-to-approach-your-web-development-project/
© OPITZ CONSULTING GmbH 2016 Slide 11Test-Driven Cloud Development
Test maturity
n Analysis of the status quo: Where we are and where we want to be?
Source: https://developer.ibm.com/urbancode/docs/continuous-delivery-maturity-model/
Minimum TargetReality
No tests
© OPITZ CONSULTING GmbH 2016 Slide 12Test-Driven Cloud Development
Continuous integration / delivery
Source:
https://guidelines.axonivy.com/projects/guides/wiki/Cont
inuous_integration_delivery
Source: http://softwareengineeringdaily.com/tag/continuous-delivery/
© OPITZ CONSULTING GmbH 2016 Slide 13Test-Driven Cloud Development
„ “Never start a (cloud) integration project
without an appropriate DevOps approach.
But how to establish it efficiently?
© OPITZ CONSULTING GmbH 2016 Slide 14Test-Driven Cloud Development
2 Oracle SOA CS and Oracle Developer CS
© OPITZ CONSULTING GmbH 2016 Slide 15Test-Driven Cloud Development
Oracle Cloud Services
Source: https://cloud.oracle.com/developer/services
© OPITZ CONSULTING GmbH 2016 Slide 16Test-Driven Cloud Development
Oracle SOA CS
n Full suite of developer tools
including OSB (Virtualization),
BPEL (Orchestration), B2B,
Managed File Transfer,
Adapters for Connectivity, API
Management
n Oracle manages the
infrastructure
n Fully automated provisioning
n Provides complete access, so
that administrators can tune,
configure, and monitor the SOA
environment as with on-prem
© OPITZ CONSULTING GmbH 2016 Slide 17Test-Driven Cloud Development
Oracle Developer CS
n Complete development platform provided as a service to enable
an agile development process and to automate DevOps & delivery
n Dev CS supports:
Continuous Integration, Continuous Delivery and Collaboration
n Is included as a free entitlement with trial and paid orders of
n Java Cloud Service,
n Java Cloud Service-SaaS Extension,
n Messaging Cloud Service,
n Mobile Cloud Service,
n SOA Cloud Service and
n Application Container Cloud
© OPITZ CONSULTING GmbH 2016 Slide 18Test-Driven Cloud Development
Developer CS – What‘s inside?
n Version Management - Git
n Build Automation
n Ant, Maven, Gradle, npm, Grunt,
Bower, Gulp, Command line
n Continuous Integration - Hudson
n Issue Tracking
n Code review
n Deployment automation
n Agile process management
n Wiki
n Activity Stream
© OPITZ CONSULTING GmbH 2016 Slide 19Test-Driven Cloud Development
3 Testing in (cloud)
integration projects
Source: http://softwareengineeringdaily.com/tag/continuous-delivery/
© OPITZ CONSULTING GmbH 2016 Slide 20Test-Driven Cloud Development
Challenges in (cloud) integration projects
n Complexity
n Distribution of systems / services
n Wide range of different technologies & skills
n Multiple data sources
n Test automation
n Deployment automation
n Consistent monitoring (E2E)
© OPITZ CONSULTING GmbH 2016 Slide 21Test-Driven Cloud Development
Testing assets in SOA CS
n Transformations
n XQuery
n XSLT
n NXSD
n Java
n Java callouts
n Custom XPath functions
n JAX-WS / JAX-RS Web Services
n Services / Processes
n Service Bus Services
n SOA Composites
© OPITZ CONSULTING GmbH 2016 Slide 22Test-Driven Cloud Development
Testing areas
CRM ERP
Process
Layer
Service
Layer
(Facades)
System
Layer
© OPITZ CONSULTING GmbH 2016 Slide 23Test-Driven Cloud Development
Elementary (Unit) tests of transformations and custom Java functionalities
CRM ERP
Process
Layer
Service
Layer
(Facades)
System
Layer
© OPITZ CONSULTING GmbH 2016 Slide 24Test-Driven Cloud Development
Service/Process component tests on local Dev Environments
CRM ERP
Process
Layer
Service
Layer
(Facades)
System
Layer
Elementary
Tests
Elementary
Tests
Elementary
Tests
Mock MockMock
MockMockMock
© OPITZ CONSULTING GmbH 2016 Slide 25Test-Driven Cloud Development
CRM ERP
Process
Layer
Service
Layer
(Facades)
System
Layer
Process
Tests
Component
Tests
MockMockMock
Service component tests on shared Test Environment
© OPITZ CONSULTING GmbH 2016 Slide 26Test-Driven Cloud Development
CRM ERP
Process
Layer
Service
Layer
(Facades)
System
Layer
End-to-End
Tests
End-to-End Tests on Integration Environments
© OPITZ CONSULTING GmbH 2016 Slide 27Test-Driven Cloud Development
Types of tests
Load/Performance/Stability tests
E2E tests
Process component tests
Service component tests
Transformation tests (XQuery, XSLT)
Custom Java functionalities
Pre-deploy
Tests
Post-deploy
Tests
Coverage
Executiontime
Complexity
© OPITZ CONSULTING GmbH 2016 Slide 28Test-Driven Cloud Development
4 OC Testframework
© OPITZ CONSULTING GmbH 2016 Slide 29Test-Driven Cloud Development
Oracle SOA OOTB testing capabilities
n Design-time tests for transformations (XQuery, XSLT)
n Design-time tests for Business rules
n Test suites for SOA composites
n Mocking of services/inbound messsages (Process initiation) at composite level
n Mocking of references/outbound messages (Emulations) at composite level
n Definition of XML assertions (Strict and similar)
n Define tests for BPEL components on BPEL activity level
n Variable and fault assertions
n Bypass blocking activities like waits
n Assert activity executions
n No testing capability for Mediator, Human Task, BPMN
© OPITZ CONSULTING GmbH 2016 Slide 30Test-Driven Cloud Development
OC SOA Testing Framework
n Java-based framework
n Developed and enhanced in several projects
n Uses provided Oracle APIs
n Supports SB Service testing
n Supports integration testing for SB and SOA composites
n Consistent integration in CI environment
n Earns further maturity through usage in international projects
n Supports SOA Suite 11g and 12c
© OPITZ CONSULTING GmbH 2016 Slide 31Test-Driven Cloud Development
Features
n Execute XQuery, Xsl and Nxsd tests
n Validate XML requests and responses
n Call services
n Intercept service calls
n Mock services (WS, JCA adapters, Human tasks)
n Manipulate runtime artifacts (DVMs, SB pipeline
configurations/properties)
n Check execution of BPMN audit trail (activty execution, etc.)
© OPITZ CONSULTING GmbH 2016 Slide 32Test-Driven Cloud Development
Comparison OOTB Testing vs. OC SOA Testing
OOTB OC SOA Testing
Test-driven approach - ✔
Test automation Composites only ✔
Mocking ✔ ✔
Support for test types
• Unit
XSLT / XQuery design-time only
Composites ✔
Service Bus –
✔
• Isolation Composites only ✔
• Integration Manual ✔
© OPITZ CONSULTING GmbH 2016 Slide 33Test-Driven Cloud Development
Benefits
n Test-Driven Development (TDD)
n Common approach in Java/JEE development
n Ensures that intended behavior is tested properly
n Consistent testing approach
n Flexibility
n Extensibility
Anti-Pattern
© OPITZ CONSULTING GmbH 2016 Slide 34Test-Driven Cloud Development
OC SOA Testing – SOA Composites
Test Client SOA Server
SAR
SAR
(original)
SAR
(manipulated)
SAR
(manipulated)
Download Composite
Execute test
Upload Composite
SAR (original)
SAR (original)
Mock services
Check
© OPITZ CONSULTING GmbH 2016 Slide 35Test-Driven Cloud Development
OC SOA Testing – SB Services
Test Client SB Server
SBAR
Create Session
Execute test SBAR
(manipulated)
Manipulate Service
Commit Session
Rollback Changes SBAR
Mock services
Check
© OPITZ CONSULTING GmbH 2016 Slide 36Test-Driven Cloud Development
5 Demo
© OPITZ CONSULTING GmbH 2016 Slide 37Test-Driven Cloud Development
Setup 1/2
n Create new project in DevCS (Initial repository)
n Adjust local Maven settings to use DevCS Maven repository
n Populate Maven repository
n mvn deploy:deploy-file -DpomFile=oracle-maven-sync-12.1.3.pom -Dfile=oracle-
maven-sync-12.1.3.jar -Durl=https://developer.us2.oraclecloud.com/profile/
developer88301-deoracleem99369/s/developer88301-deoracleem99369_soa-cloud-
testing_10988/maven/ -DrepositoryId=odcs
n mvn com.oracle.maven:oracle-maven-sync:push -Doracle-maven-
sync.oracleHome=$MW_HOME -Doracle-maven-sync.serverId=odcs -P odcs
n Add additional libraries needed by the OC SOA Testingframework
© OPITZ CONSULTING GmbH 2016 Slide 38Test-Driven Cloud Development
Setup 2/2
n Commit & push your code to DevCS Git repository
n Deploy your artifacts to SOA CS
n Define the Hudson build jobs that executes tests
n Pre-deploy test (XQuery, Xsl, Nxsd)
n Post-deploy test (SOA composite tests, SB services)
n Find a detailed description with the basic steps:
https://community.oracle.com/community/cloud_computing/platform-as-a-
service-paas/oracle-developer-cloud-service/blog/2015/11/05/soa-cloud-
service-developer-cloud-service-integration
© OPITZ CONSULTING GmbH 2016 Slide 39Test-Driven Cloud Development
5 Benefits
© OPITZ CONSULTING GmbH 2016 Slide 40Test-Driven Cloud Development
Benefits
n Consistent, straight-forward testing approach
n Enables DevOps for SOA CS
n Uses the same technologies for all implementation assests
n Supports the automation of the software development lifecycle
n Considers all assets of an SOA CS integration project
n Scalability
n Add new testing capabilties by adding additional environments
n Improve code quality
n Faster development cycles
n Supports version upgrades and on-prem to cloud migrations
covered by tests to validate the results
© OPITZ CONSULTING GmbH 2016 Slide 41Test-Driven Cloud Development
Q & A
© OPITZ CONSULTING GmbH 2016 Slide 42Test-Driven Cloud Development
Contact Details
Danilo Schmiedel
Solution Architect | Oracle ACE Director
OPITZ CONSULTING Deutschland GmbH
Tempelhofer Weg 64, 12347 Berlin, Germany
http://www.opitz-consulting.com
Phone: +49 173 7279001
Mail: danilo.schmiedel@opitz-consulting.com
@dschmied
http://inside-bpm-and-soa.blogspot.com & http://thecattlecrew.net
© OPITZ CONSULTING GmbH 2016 Slide 43Test-Driven Cloud Development
Contact Details
Sven Bernhardt
Solution Architect | Oracle ACE
OPITZ CONSULTING Deutschland GmbH
Kirchstrasse 6, 51647 Gummersbach, Germany
http://www.opitz-consulting.com
Phone: +49 172 2193529
Mail: sven.bernhardt@opitz-consulting.com
@sbernhardt
https://svenbernhardt.wordpress.com & http://thecattlecrew.net

Contenu connexe

Tendances

Oracle Ravello Presentation 7Dec16 v1
Oracle Ravello Presentation 7Dec16 v1Oracle Ravello Presentation 7Dec16 v1
Oracle Ravello Presentation 7Dec16 v1
Kurt Liu
 

Tendances (20)

2017 State Enterprise Multi Cloud Webinar
2017 State Enterprise Multi Cloud Webinar2017 State Enterprise Multi Cloud Webinar
2017 State Enterprise Multi Cloud Webinar
 
BootsFaces, AngularFaces und ein Blck unter die Motorhaube
BootsFaces, AngularFaces und ein Blck unter die MotorhaubeBootsFaces, AngularFaces und ein Blck unter die Motorhaube
BootsFaces, AngularFaces und ein Blck unter die Motorhaube
 
Oracle Ravello Presentation 7Dec16 v1
Oracle Ravello Presentation 7Dec16 v1Oracle Ravello Presentation 7Dec16 v1
Oracle Ravello Presentation 7Dec16 v1
 
VMware Tanzu Application Service as an Integration Platform
VMware Tanzu Application Service as an Integration PlatformVMware Tanzu Application Service as an Integration Platform
VMware Tanzu Application Service as an Integration Platform
 
Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)Oracle Developer Cloud - 소개 (신기능 포함)
Oracle Developer Cloud - 소개 (신기능 포함)
 
Discover Salesforce Commerce Cloud and Vlocity Integration Patterns
Discover Salesforce Commerce Cloud and Vlocity Integration PatternsDiscover Salesforce Commerce Cloud and Vlocity Integration Patterns
Discover Salesforce Commerce Cloud and Vlocity Integration Patterns
 
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on AzureAccelerate Digital Transformation with Pivotal Cloud Foundry on Azure
Accelerate Digital Transformation with Pivotal Cloud Foundry on Azure
 
CA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the EnterpriseCA World 2014 Release Automation Coexistence in the Enterprise
CA World 2014 Release Automation Coexistence in the Enterprise
 
@avanttic_meetup Oracle Technology MAD_BCN: Oracle Cloud API Platform evoluc...
@avanttic_meetup Oracle Technology MAD_BCN:  Oracle Cloud API Platform evoluc...@avanttic_meetup Oracle Technology MAD_BCN:  Oracle Cloud API Platform evoluc...
@avanttic_meetup Oracle Technology MAD_BCN: Oracle Cloud API Platform evoluc...
 
Cloud-native is just part of the game
Cloud-native is just part of the gameCloud-native is just part of the game
Cloud-native is just part of the game
 
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
Architecture Room Stuttgart - "Cloud-native ist nur ein Teil des Spiels!"
 
Getting Started with OpenStack
Getting Started with OpenStackGetting Started with OpenStack
Getting Started with OpenStack
 
Pivotal Cloud Foundry: A Technical Overview
Pivotal Cloud Foundry: A Technical OverviewPivotal Cloud Foundry: A Technical Overview
Pivotal Cloud Foundry: A Technical Overview
 
AMIS 25: DevOps Best Practice for Oracle SOA and BPM
AMIS 25: DevOps Best Practice for Oracle SOA and BPMAMIS 25: DevOps Best Practice for Oracle SOA and BPM
AMIS 25: DevOps Best Practice for Oracle SOA and BPM
 
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
Creating Polyglot Communication Between Kubernetes Clusters and Legacy System...
 
Observe and command your fleets across any kubernetes with weave git ops
Observe and command your fleets across any kubernetes with weave git opsObserve and command your fleets across any kubernetes with weave git ops
Observe and command your fleets across any kubernetes with weave git ops
 
Oracle SOA Development - Hands-On from Start to Finish
Oracle SOA Development - Hands-On from Start to FinishOracle SOA Development - Hands-On from Start to Finish
Oracle SOA Development - Hands-On from Start to Finish
 
Updating the Salesforce Suite to Drupal 8: Major Changes for a Big Module
Updating the Salesforce Suite to Drupal 8: Major Changes for a Big ModuleUpdating the Salesforce Suite to Drupal 8: Major Changes for a Big Module
Updating the Salesforce Suite to Drupal 8: Major Changes for a Big Module
 
Drupal 8 and 9, Backwards Compatibility, and Drupal 8.5 update
Drupal 8 and 9, Backwards Compatibility, and Drupal 8.5 updateDrupal 8 and 9, Backwards Compatibility, and Drupal 8.5 update
Drupal 8 and 9, Backwards Compatibility, and Drupal 8.5 update
 
Leveraging VMware Technology To Build an Enterprise Grade Openstack Cloud - I...
Leveraging VMware Technology To Build an Enterprise Grade Openstack Cloud - I...Leveraging VMware Technology To Build an Enterprise Grade Openstack Cloud - I...
Leveraging VMware Technology To Build an Enterprise Grade Openstack Cloud - I...
 

En vedette

BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...
BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...
BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...
Micah Altman
 
BROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKEL
BROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKELBROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKEL
BROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKEL
Micah Altman
 
Making Decisions in a World Awash in Data: We’re going to need a different bo...
Making Decisions in a World Awash in Data: We’re going to need a different bo...Making Decisions in a World Awash in Data: We’re going to need a different bo...
Making Decisions in a World Awash in Data: We’re going to need a different bo...
Micah Altman
 

En vedette (15)

Con3036 soaring-through-the-clouds-oow2016-160920214845
Con3036 soaring-through-the-clouds-oow2016-160920214845Con3036 soaring-through-the-clouds-oow2016-160920214845
Con3036 soaring-through-the-clouds-oow2016-160920214845
 
SOA Suite11g Fanout Events- to correlate into multiple instances
SOA Suite11g Fanout Events- to correlate into multiple instancesSOA Suite11g Fanout Events- to correlate into multiple instances
SOA Suite11g Fanout Events- to correlate into multiple instances
 
Program on Information Science Brown Bag:David Weinberger on Libraries as Pla...
Program on Information Science Brown Bag:David Weinberger on Libraries as Pla...Program on Information Science Brown Bag:David Weinberger on Libraries as Pla...
Program on Information Science Brown Bag:David Weinberger on Libraries as Pla...
 
Dulin PermaCC Talk for MIT PIS
Dulin PermaCC Talk for MIT PISDulin PermaCC Talk for MIT PIS
Dulin PermaCC Talk for MIT PIS
 
MIT Program on Information Science Talk -- Julia Flanders on Jobs, Roles, Ski...
MIT Program on Information Science Talk -- Julia Flanders on Jobs, Roles, Ski...MIT Program on Information Science Talk -- Julia Flanders on Jobs, Roles, Ski...
MIT Program on Information Science Talk -- Julia Flanders on Jobs, Roles, Ski...
 
Reproducibility from an infomatics perspective
Reproducibility from an infomatics perspectiveReproducibility from an infomatics perspective
Reproducibility from an infomatics perspective
 
BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...
BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...
BROWN BAG TALK WITH CHAOQUN NI- TRANSFORMATIVE INTERACTIONS IN THE SCIENTIFIC...
 
Brown Bag: DMCA §1201 and Video Game Preservation Institutions: A Case Study ...
Brown Bag: DMCA §1201 and Video Game Preservation Institutions: A Case Study ...Brown Bag: DMCA §1201 and Video Game Preservation Institutions: A Case Study ...
Brown Bag: DMCA §1201 and Video Game Preservation Institutions: A Case Study ...
 
BROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKEL
BROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKELBROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKEL
BROWN BAG: THE VISUAL COMPONENT: MORE THAN PRETTY PICTURES - WITH FELICE FRANKEL
 
Can computers be feminist? Program on Information Science Talk by Gillian Smith
Can computers be feminist? Program on Information Science Talk by Gillian SmithCan computers be feminist? Program on Information Science Talk by Gillian Smith
Can computers be feminist? Program on Information Science Talk by Gillian Smith
 
Data Citation Rewards and Incentives
 Data Citation Rewards and Incentives Data Citation Rewards and Incentives
Data Citation Rewards and Incentives
 
Gary Price, MIT Program on Information Science
Gary Price, MIT Program on Information ScienceGary Price, MIT Program on Information Science
Gary Price, MIT Program on Information Science
 
The Open Access Network: Rebecca Kennison’s Talk for the MIT Prorgam on Infor...
The Open Access Network: Rebecca Kennison’s Talk for the MIT Prorgam on Infor...The Open Access Network: Rebecca Kennison’s Talk for the MIT Prorgam on Infor...
The Open Access Network: Rebecca Kennison’s Talk for the MIT Prorgam on Infor...
 
Making Decisions in a World Awash in Data: We’re going to need a different bo...
Making Decisions in a World Awash in Data: We’re going to need a different bo...Making Decisions in a World Awash in Data: We’re going to need a different bo...
Making Decisions in a World Awash in Data: We’re going to need a different bo...
 
MIT Program on Information Science Talk -- Ophir Frieder on Searching in Hars...
MIT Program on Information Science Talk -- Ophir Frieder on Searching in Hars...MIT Program on Information Science Talk -- Ophir Frieder on Searching in Hars...
MIT Program on Information Science Talk -- Ophir Frieder on Searching in Hars...
 

Similaire à Test driven cloud development using Oracle SOA CS and Oracle Developer CS

PaaS and OpenStack
PaaS and OpenStackPaaS and OpenStack
PaaS and OpenStack
Seth Fox
 
Latest Resume latest uploaded wala
Latest Resume latest uploaded walaLatest Resume latest uploaded wala
Latest Resume latest uploaded wala
Amit Mishra
 

Similaire à Test driven cloud development using Oracle SOA CS and Oracle Developer CS (20)

Test-Driven Cloud Development with Oracle SOA Cloud Service and Oracle Develo...
Test-Driven Cloud Development with Oracle SOA Cloud Service and Oracle Develo...Test-Driven Cloud Development with Oracle SOA Cloud Service and Oracle Develo...
Test-Driven Cloud Development with Oracle SOA Cloud Service and Oracle Develo...
 
Releasemanagement in integration projects
Releasemanagement in integration projectsReleasemanagement in integration projects
Releasemanagement in integration projects
 
Improve your Cloud Integrations with Test-driven Development
Improve your Cloud Integrations with Test-driven Development Improve your Cloud Integrations with Test-driven Development
Improve your Cloud Integrations with Test-driven Development
 
Building and Deploying a SaaS Business Intelligence Solution
Building and Deploying a SaaS Business Intelligence SolutionBuilding and Deploying a SaaS Business Intelligence Solution
Building and Deploying a SaaS Business Intelligence Solution
 
Panel Discussion SAP DevOps - ReleaseOwl
Panel Discussion SAP DevOps - ReleaseOwlPanel Discussion SAP DevOps - ReleaseOwl
Panel Discussion SAP DevOps - ReleaseOwl
 
PaaS and OpenStack
PaaS and OpenStackPaaS and OpenStack
PaaS and OpenStack
 
Accelerate your business and reduce cost with OpenStack
Accelerate your business and reduce cost with OpenStackAccelerate your business and reduce cost with OpenStack
Accelerate your business and reduce cost with OpenStack
 
Beyond OpenStack | OpenStack in Real Life
Beyond OpenStack | OpenStack in Real LifeBeyond OpenStack | OpenStack in Real Life
Beyond OpenStack | OpenStack in Real Life
 
Grails & DevOps: continuous integration and delivery in the cloud
Grails & DevOps: continuous integration and delivery in the cloudGrails & DevOps: continuous integration and delivery in the cloud
Grails & DevOps: continuous integration and delivery in the cloud
 
Ayyadevara Rangadham 1203
Ayyadevara Rangadham 1203Ayyadevara Rangadham 1203
Ayyadevara Rangadham 1203
 
Craig Sheridan International Industry-Academia Workshop on Cloud Reliability ...
Craig Sheridan International Industry-Academia Workshop on Cloud Reliability ...Craig Sheridan International Industry-Academia Workshop on Cloud Reliability ...
Craig Sheridan International Industry-Academia Workshop on Cloud Reliability ...
 
Weave GitOps 2023.04 Release: Optimizing Developer Productivity & Experience ...
Weave GitOps 2023.04 Release: Optimizing Developer Productivity & Experience ...Weave GitOps 2023.04 Release: Optimizing Developer Productivity & Experience ...
Weave GitOps 2023.04 Release: Optimizing Developer Productivity & Experience ...
 
Modern Application Development on the Cloud (GCP)
Modern Application Development on the Cloud (GCP)Modern Application Development on the Cloud (GCP)
Modern Application Development on the Cloud (GCP)
 
Implementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCIImplementing API-led Cloud-native apps on OCI
Implementing API-led Cloud-native apps on OCI
 
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...Transformacion e innovacion digital Meetup - Application Modernization and Mi...
Transformacion e innovacion digital Meetup - Application Modernization and Mi...
 
Latest Resume latest uploaded wala
Latest Resume latest uploaded walaLatest Resume latest uploaded wala
Latest Resume latest uploaded wala
 
Securing Your App Deployments with Tunnels, OIDC, RBAC, and Progressive Deliv...
Securing Your App Deployments with Tunnels, OIDC, RBAC, and Progressive Deliv...Securing Your App Deployments with Tunnels, OIDC, RBAC, and Progressive Deliv...
Securing Your App Deployments with Tunnels, OIDC, RBAC, and Progressive Deliv...
 
'Run PeopleSoft PUM Images on Oracle Cloud for Less than the Cost of your Mon...
'Run PeopleSoft PUM Images on Oracle Cloud for Less than the Cost of your Mon...'Run PeopleSoft PUM Images on Oracle Cloud for Less than the Cost of your Mon...
'Run PeopleSoft PUM Images on Oracle Cloud for Less than the Cost of your Mon...
 
Deploying Stateful Applications Securely & Confidently with Ondat & Weave GitOps
Deploying Stateful Applications Securely & Confidently with Ondat & Weave GitOpsDeploying Stateful Applications Securely & Confidently with Ondat & Weave GitOps
Deploying Stateful Applications Securely & Confidently with Ondat & Weave GitOps
 
AWS Partner Summit London 2015 - Keynote
AWS Partner Summit London 2015 - KeynoteAWS Partner Summit London 2015 - Keynote
AWS Partner Summit London 2015 - Keynote
 

Plus de Sven Bernhardt

Declarative observability management for Microservice architectures
Declarative observability management for Microservice architecturesDeclarative observability management for Microservice architectures
Declarative observability management for Microservice architectures
Sven Bernhardt
 
Service integration made easy with Open Source Kuma
Service integration made easy with Open Source KumaService integration made easy with Open Source Kuma
Service integration made easy with Open Source Kuma
Sven Bernhardt
 

Plus de Sven Bernhardt (20)

Effective and simple - integration architectures with Apache Camel and Quarkus
Effective and simple - integration architectures with Apache Camel and QuarkusEffective and simple - integration architectures with Apache Camel and Quarkus
Effective and simple - integration architectures with Apache Camel and Quarkus
 
One Gateway to Rule them All: Building a Federated API Management Platform
One Gateway to Rule them All: Building a Federated API Management PlatformOne Gateway to Rule them All: Building a Federated API Management Platform
One Gateway to Rule them All: Building a Federated API Management Platform
 
Modernization options for Oracle Forms applications
Modernization options for Oracle Forms applicationsModernization options for Oracle Forms applications
Modernization options for Oracle Forms applications
 
Elevating Development: Embracing APIOps for Enhanced Developer Productivity
Elevating Development: Embracing APIOps for Enhanced Developer ProductivityElevating Development: Embracing APIOps for Enhanced Developer Productivity
Elevating Development: Embracing APIOps for Enhanced Developer Productivity
 
Kong 101 - Jumpstart into the world of APIs
Kong 101 - Jumpstart into the world of APIsKong 101 - Jumpstart into the world of APIs
Kong 101 - Jumpstart into the world of APIs
 
Declarative observability management for Microservice architectures
Declarative observability management for Microservice architecturesDeclarative observability management for Microservice architectures
Declarative observability management for Microservice architectures
 
Integration architectures based on Microservices, APIs and events
Integration architectures based on Microservices,  APIs and eventsIntegration architectures based on Microservices,  APIs and events
Integration architectures based on Microservices, APIs and events
 
Build and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaBuild and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using Kuma
 
Build and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using KumaBuild and Manage Multi-Cloud Applications Using Kuma
Build and Manage Multi-Cloud Applications Using Kuma
 
Torch the light - Implementing Observability for Microservice Architectures
Torch the light - Implementing Observability for Microservice ArchitecturesTorch the light - Implementing Observability for Microservice Architectures
Torch the light - Implementing Observability for Microservice Architectures
 
Analytics meets Integration - Modern Development with Data APIs
Analytics meets Integration - Modern Development with Data APIsAnalytics meets Integration - Modern Development with Data APIs
Analytics meets Integration - Modern Development with Data APIs
 
Modern Integration based on OCI Cloud-native Services
Modern Integration based on OCI Cloud-native ServicesModern Integration based on OCI Cloud-native Services
Modern Integration based on OCI Cloud-native Services
 
Service Mesh Advanced Use Cases
Service Mesh Advanced Use CasesService Mesh Advanced Use Cases
Service Mesh Advanced Use Cases
 
Cloud-native Application Development on OCI
Cloud-native Application Development on OCICloud-native Application Development on OCI
Cloud-native Application Development on OCI
 
Rumble in the Jungle - API Kickstart with Kong
Rumble in the Jungle - API Kickstart with KongRumble in the Jungle - API Kickstart with Kong
Rumble in the Jungle - API Kickstart with Kong
 
Cloud-native Application Development - The new normal
Cloud-native Application Development - The new normalCloud-native Application Development - The new normal
Cloud-native Application Development - The new normal
 
Efficient API delivery with APIOps
Efficient API delivery with APIOpsEfficient API delivery with APIOps
Efficient API delivery with APIOps
 
Implementing Cloud-native apps on OCI
Implementing Cloud-native apps on OCIImplementing Cloud-native apps on OCI
Implementing Cloud-native apps on OCI
 
Efficient API delivery with APIOps
Efficient API delivery with APIOpsEfficient API delivery with APIOps
Efficient API delivery with APIOps
 
Service integration made easy with Open Source Kuma
Service integration made easy with Open Source KumaService integration made easy with Open Source Kuma
Service integration made easy with Open Source Kuma
 

Dernier

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Dernier (20)

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 

Test driven cloud development using Oracle SOA CS and Oracle Developer CS

  • 1. © OPITZ CONSULTING GmbH 2016 Slide 1Test-Driven Cloud Development September 2016 Test-Driven Cloud Development Danilo Schmiedel Solution Architect | Oracle ACE Director OPITZ CONSULTING Deutschland GmbH Sven Bernhardt Solution Architect | Oracle ACE OPITZ CONSULTING Deutschland GmbH Using Oracle SOA Cloud Service and Oracle Developer Cloud Service
  • 2. © OPITZ CONSULTING GmbH 2016 Slide 2Test-Driven Cloud Development Oracle SOA 12c @ Opitz - First Oracle SOA / BPEL project in 2006 - Implemented multiple 10g to 11g projects - Wide knowledge with Side-by-Side upgrades based on Enterprise Deployment Guide n Oracle Platinum Partner, founded in 1990, located in Germany and Poland n Specialized in many products across the Oracle portfolio n 2 Oracle ACE Directors and 2 Oracle ACEs n Recognized as one of the leading Oracle Fusion Middleware Partners n 2015 & 2014: BPM Partner Community Award 2010: Fusion Middleware Award 2008 – 2010: EMEA SOA Community Award About OPITZ CONSULTING - Experienced with In-Place Upgrades long running / stateful processes with minimal downtime - Products included in upgraded solutions: - Oracle SOA Suite12c - Oracle OSB 12c - Oracle BAM 12c
  • 3. © OPITZ CONSULTING GmbH 2016 Slide 3Test-Driven Cloud Development Agenda 1. Why test-driven development? 2. Oracle SOA CS and Oracle Developer CS 3. Testing in (cloud) integration projects 4. OC Testframework 5. Demo 6. Benefits
  • 4. © OPITZ CONSULTING GmbH 2016 Slide 4Test-Driven Cloud Development 1 Why test-driven development?
  • 5. © OPITZ CONSULTING GmbH 2016 Slide 5Test-Driven Cloud Development Case Study #1 - Simplified Solution Architecture Webshop ERP Warehouses Carriers Suppliers Integration Platform (SOA Suite) Customer Service
  • 6. © OPITZ CONSULTING GmbH 2016 Slide 6Test-Driven Cloud Development Case Study #1 - Problem Cloud Transparency Technical Monitoring Schema Validation Handling of technical faults Handling of business faultsHuman Intervention Versioning Re-usability System Integration Adapter Different Protocols ScalabilityContinuity Standardization Time-to-Market
  • 7. © OPITZ CONSULTING GmbH 2016 Slide 7Test-Driven Cloud Development Case Study #1 – Team Structure ERP Team MW Team QA Team 5 People 9 People 6 People
  • 8. © OPITZ CONSULTING GmbH 2016 Slide 8Test-Driven Cloud Development 2015 2016Jan Mrz Mai Jul Sep Nov 2016 Mrz Mai GoLive: Foundation Components 1 Feb 15, 2015 GoLive: Foundation Components 2 Mrz 22, 2015 GoLive: Release 1 Apr 12, 2015 GoLive: Release 2 Mai 24, 2015 GoLive: Release 3 Jul 19, 2015 GoLive: Release 4 Dez 7, 2015 GoLive: Release 5 Jan 20, 2016 GoLive: Release 6 Apr 19, 2016 GoLive: Release 7 Mai 3, 2016 Project Kick off (incl. Specification) Jan 5, 2015 Development of all Releases completed Sep 18, 2015 40 days QA of Release 1 30 days QA of Release 2 40 days QA of Release 3 100 days QA of Release 4 32 days QA of Release 5 63 days QA of Release 6 9 days QA of Release 7 ~ 8 month
  • 9. © OPITZ CONSULTING GmbH 2016 Slide 9Test-Driven Cloud Development Case Study #1 – Project Approach (Target) n Target approach was agile n Small, incremental deliverables n In-time business value generation Source: http://blog.procademysoftware.com/agile-project- management/ Source: http://www.commonplaces.com/blog/agile-vs- waterfall-how-to-approach-your-web-development-project/
  • 10. © OPITZ CONSULTING GmbH 2016 Slide 10Test-Driven Cloud Development Case Study #1 – Project Approach (Reality) n Static and cumbersome n Insufficient test automation and no budget for DevOps n Releases became too complex Source: http://blog.procademysoftware.com/agile- project-management/ Source: http://www.commonplaces.com/blog/agile-vs-waterfall- how-to-approach-your-web-development-project/
  • 11. © OPITZ CONSULTING GmbH 2016 Slide 11Test-Driven Cloud Development Test maturity n Analysis of the status quo: Where we are and where we want to be? Source: https://developer.ibm.com/urbancode/docs/continuous-delivery-maturity-model/ Minimum TargetReality No tests
  • 12. © OPITZ CONSULTING GmbH 2016 Slide 12Test-Driven Cloud Development Continuous integration / delivery Source: https://guidelines.axonivy.com/projects/guides/wiki/Cont inuous_integration_delivery Source: http://softwareengineeringdaily.com/tag/continuous-delivery/
  • 13. © OPITZ CONSULTING GmbH 2016 Slide 13Test-Driven Cloud Development „ “Never start a (cloud) integration project without an appropriate DevOps approach. But how to establish it efficiently?
  • 14. © OPITZ CONSULTING GmbH 2016 Slide 14Test-Driven Cloud Development 2 Oracle SOA CS and Oracle Developer CS
  • 15. © OPITZ CONSULTING GmbH 2016 Slide 15Test-Driven Cloud Development Oracle Cloud Services Source: https://cloud.oracle.com/developer/services
  • 16. © OPITZ CONSULTING GmbH 2016 Slide 16Test-Driven Cloud Development Oracle SOA CS n Full suite of developer tools including OSB (Virtualization), BPEL (Orchestration), B2B, Managed File Transfer, Adapters for Connectivity, API Management n Oracle manages the infrastructure n Fully automated provisioning n Provides complete access, so that administrators can tune, configure, and monitor the SOA environment as with on-prem
  • 17. © OPITZ CONSULTING GmbH 2016 Slide 17Test-Driven Cloud Development Oracle Developer CS n Complete development platform provided as a service to enable an agile development process and to automate DevOps & delivery n Dev CS supports: Continuous Integration, Continuous Delivery and Collaboration n Is included as a free entitlement with trial and paid orders of n Java Cloud Service, n Java Cloud Service-SaaS Extension, n Messaging Cloud Service, n Mobile Cloud Service, n SOA Cloud Service and n Application Container Cloud
  • 18. © OPITZ CONSULTING GmbH 2016 Slide 18Test-Driven Cloud Development Developer CS – What‘s inside? n Version Management - Git n Build Automation n Ant, Maven, Gradle, npm, Grunt, Bower, Gulp, Command line n Continuous Integration - Hudson n Issue Tracking n Code review n Deployment automation n Agile process management n Wiki n Activity Stream
  • 19. © OPITZ CONSULTING GmbH 2016 Slide 19Test-Driven Cloud Development 3 Testing in (cloud) integration projects Source: http://softwareengineeringdaily.com/tag/continuous-delivery/
  • 20. © OPITZ CONSULTING GmbH 2016 Slide 20Test-Driven Cloud Development Challenges in (cloud) integration projects n Complexity n Distribution of systems / services n Wide range of different technologies & skills n Multiple data sources n Test automation n Deployment automation n Consistent monitoring (E2E)
  • 21. © OPITZ CONSULTING GmbH 2016 Slide 21Test-Driven Cloud Development Testing assets in SOA CS n Transformations n XQuery n XSLT n NXSD n Java n Java callouts n Custom XPath functions n JAX-WS / JAX-RS Web Services n Services / Processes n Service Bus Services n SOA Composites
  • 22. © OPITZ CONSULTING GmbH 2016 Slide 22Test-Driven Cloud Development Testing areas CRM ERP Process Layer Service Layer (Facades) System Layer
  • 23. © OPITZ CONSULTING GmbH 2016 Slide 23Test-Driven Cloud Development Elementary (Unit) tests of transformations and custom Java functionalities CRM ERP Process Layer Service Layer (Facades) System Layer
  • 24. © OPITZ CONSULTING GmbH 2016 Slide 24Test-Driven Cloud Development Service/Process component tests on local Dev Environments CRM ERP Process Layer Service Layer (Facades) System Layer Elementary Tests Elementary Tests Elementary Tests Mock MockMock MockMockMock
  • 25. © OPITZ CONSULTING GmbH 2016 Slide 25Test-Driven Cloud Development CRM ERP Process Layer Service Layer (Facades) System Layer Process Tests Component Tests MockMockMock Service component tests on shared Test Environment
  • 26. © OPITZ CONSULTING GmbH 2016 Slide 26Test-Driven Cloud Development CRM ERP Process Layer Service Layer (Facades) System Layer End-to-End Tests End-to-End Tests on Integration Environments
  • 27. © OPITZ CONSULTING GmbH 2016 Slide 27Test-Driven Cloud Development Types of tests Load/Performance/Stability tests E2E tests Process component tests Service component tests Transformation tests (XQuery, XSLT) Custom Java functionalities Pre-deploy Tests Post-deploy Tests Coverage Executiontime Complexity
  • 28. © OPITZ CONSULTING GmbH 2016 Slide 28Test-Driven Cloud Development 4 OC Testframework
  • 29. © OPITZ CONSULTING GmbH 2016 Slide 29Test-Driven Cloud Development Oracle SOA OOTB testing capabilities n Design-time tests for transformations (XQuery, XSLT) n Design-time tests for Business rules n Test suites for SOA composites n Mocking of services/inbound messsages (Process initiation) at composite level n Mocking of references/outbound messages (Emulations) at composite level n Definition of XML assertions (Strict and similar) n Define tests for BPEL components on BPEL activity level n Variable and fault assertions n Bypass blocking activities like waits n Assert activity executions n No testing capability for Mediator, Human Task, BPMN
  • 30. © OPITZ CONSULTING GmbH 2016 Slide 30Test-Driven Cloud Development OC SOA Testing Framework n Java-based framework n Developed and enhanced in several projects n Uses provided Oracle APIs n Supports SB Service testing n Supports integration testing for SB and SOA composites n Consistent integration in CI environment n Earns further maturity through usage in international projects n Supports SOA Suite 11g and 12c
  • 31. © OPITZ CONSULTING GmbH 2016 Slide 31Test-Driven Cloud Development Features n Execute XQuery, Xsl and Nxsd tests n Validate XML requests and responses n Call services n Intercept service calls n Mock services (WS, JCA adapters, Human tasks) n Manipulate runtime artifacts (DVMs, SB pipeline configurations/properties) n Check execution of BPMN audit trail (activty execution, etc.)
  • 32. © OPITZ CONSULTING GmbH 2016 Slide 32Test-Driven Cloud Development Comparison OOTB Testing vs. OC SOA Testing OOTB OC SOA Testing Test-driven approach - ✔ Test automation Composites only ✔ Mocking ✔ ✔ Support for test types • Unit XSLT / XQuery design-time only Composites ✔ Service Bus – ✔ • Isolation Composites only ✔ • Integration Manual ✔
  • 33. © OPITZ CONSULTING GmbH 2016 Slide 33Test-Driven Cloud Development Benefits n Test-Driven Development (TDD) n Common approach in Java/JEE development n Ensures that intended behavior is tested properly n Consistent testing approach n Flexibility n Extensibility Anti-Pattern
  • 34. © OPITZ CONSULTING GmbH 2016 Slide 34Test-Driven Cloud Development OC SOA Testing – SOA Composites Test Client SOA Server SAR SAR (original) SAR (manipulated) SAR (manipulated) Download Composite Execute test Upload Composite SAR (original) SAR (original) Mock services Check
  • 35. © OPITZ CONSULTING GmbH 2016 Slide 35Test-Driven Cloud Development OC SOA Testing – SB Services Test Client SB Server SBAR Create Session Execute test SBAR (manipulated) Manipulate Service Commit Session Rollback Changes SBAR Mock services Check
  • 36. © OPITZ CONSULTING GmbH 2016 Slide 36Test-Driven Cloud Development 5 Demo
  • 37. © OPITZ CONSULTING GmbH 2016 Slide 37Test-Driven Cloud Development Setup 1/2 n Create new project in DevCS (Initial repository) n Adjust local Maven settings to use DevCS Maven repository n Populate Maven repository n mvn deploy:deploy-file -DpomFile=oracle-maven-sync-12.1.3.pom -Dfile=oracle- maven-sync-12.1.3.jar -Durl=https://developer.us2.oraclecloud.com/profile/ developer88301-deoracleem99369/s/developer88301-deoracleem99369_soa-cloud- testing_10988/maven/ -DrepositoryId=odcs n mvn com.oracle.maven:oracle-maven-sync:push -Doracle-maven- sync.oracleHome=$MW_HOME -Doracle-maven-sync.serverId=odcs -P odcs n Add additional libraries needed by the OC SOA Testingframework
  • 38. © OPITZ CONSULTING GmbH 2016 Slide 38Test-Driven Cloud Development Setup 2/2 n Commit & push your code to DevCS Git repository n Deploy your artifacts to SOA CS n Define the Hudson build jobs that executes tests n Pre-deploy test (XQuery, Xsl, Nxsd) n Post-deploy test (SOA composite tests, SB services) n Find a detailed description with the basic steps: https://community.oracle.com/community/cloud_computing/platform-as-a- service-paas/oracle-developer-cloud-service/blog/2015/11/05/soa-cloud- service-developer-cloud-service-integration
  • 39. © OPITZ CONSULTING GmbH 2016 Slide 39Test-Driven Cloud Development 5 Benefits
  • 40. © OPITZ CONSULTING GmbH 2016 Slide 40Test-Driven Cloud Development Benefits n Consistent, straight-forward testing approach n Enables DevOps for SOA CS n Uses the same technologies for all implementation assests n Supports the automation of the software development lifecycle n Considers all assets of an SOA CS integration project n Scalability n Add new testing capabilties by adding additional environments n Improve code quality n Faster development cycles n Supports version upgrades and on-prem to cloud migrations covered by tests to validate the results
  • 41. © OPITZ CONSULTING GmbH 2016 Slide 41Test-Driven Cloud Development Q & A
  • 42. © OPITZ CONSULTING GmbH 2016 Slide 42Test-Driven Cloud Development Contact Details Danilo Schmiedel Solution Architect | Oracle ACE Director OPITZ CONSULTING Deutschland GmbH Tempelhofer Weg 64, 12347 Berlin, Germany http://www.opitz-consulting.com Phone: +49 173 7279001 Mail: danilo.schmiedel@opitz-consulting.com @dschmied http://inside-bpm-and-soa.blogspot.com & http://thecattlecrew.net
  • 43. © OPITZ CONSULTING GmbH 2016 Slide 43Test-Driven Cloud Development Contact Details Sven Bernhardt Solution Architect | Oracle ACE OPITZ CONSULTING Deutschland GmbH Kirchstrasse 6, 51647 Gummersbach, Germany http://www.opitz-consulting.com Phone: +49 172 2193529 Mail: sven.bernhardt@opitz-consulting.com @sbernhardt https://svenbernhardt.wordpress.com & http://thecattlecrew.net