SlideShare a Scribd company logo
1 of 20
Download to read offline
App Connect v12
Unit testing with a Pipeline Example
—
Trevor Dolby
Architect, IBM App Connect Enterprise
tdolby@uk.ibm.com
Contents
App Connect Enterprise (ACE) v12
Background
Testing integration solutions
Challenges and techniques
ACE in pipelines
DevOps and containers
Demo pipeline
GitHub, Tekton, and CI
IBM Integration / © 2021 IBM Corporation
ACE v12
What is integration?
Integration is how systems and applications are
connected to enable the systems and applications
to exchange data with each other or with other
connected and integrated applications and systems
no matter what the data and/or protocols are being
used between them.
Provides:
1. Connectivity
2. Routing
3. Transformation
to enable sharing of data between applications and
services securely irrespective of the data format
and protocol that these system and services use
between them
IBM Integration / © 2021 IBM Corporation 4
A. Fine-grained deployment
B. Decentralized ownership
C. Cloud native infrastructure
API API API
API
API
API
API API
API
Traditional application integration
(centrally provisioned and administered silo)
IBM Integration / © 2021 IBM Corporation 5
Agile Integration Architecture
App Connect Enterprise v12
• Built-in nodes encapsulate transports,
technologies and applications:
• Connecting with client applications
• Routing messages
• Transforming and enriching
messages
• Processing events
• Handling errors in message flows
• Reduce the amount of custom code
required to implement solutions
• Built-in facilities like activity log and
resource statistics
• High performance and scalability
• Feature rich Message Modelling
IBM Integration / © 2021 IBM Corporation 6
Testing
integration
solutions
Functionality, quality, reliability, serviceability, etc
Integration has more external interactions
• More infrastructure (hardware, network, etc) changes
• External service upgraded
• Back-end service changes
Requires more test approaches than ordinary
application development, but similar techniques apply
No one test shape fits everyone
• Traditional test pyramid principles still valid
• Realistic testing looks less like an ideal pyramid and
more like a test trophy or microservice honeycomb
E2E
Component
Unit Test
IBM Integration / © 2021 IBM Corporation 8
Testing: prove business requirements met
• Test one node
• Use simple or recorded messages
• No down flow propagation at test time
• No interaction with the outside world
• Check map or ESQL changes haven’t broken behaviour
• Identifying issues & analysis scoped to a single node
• Spy & assert correct behaviour
Service DB
IBM Integration / © 2021 IBM Corporation 9
Test a single message flow node
Test external transport link
• Test one node
• Interacts with the outside world
• Check DB connection works, and that schemas are compatible
• Not dependent on REST service
• Could run a similar test on the REST call without needing a DB
Service DB
IBM Integration / © 2021 IBM Corporation 10
Create and run tests during development
Create tests for message flows and nodes:
• Generated automatically from message
models associated with a flow
• Generated using actual messages recorded
during development
• Written by developers starting from sample
tests, tutorials, etc.
Run tests without needing infrastructure:
• Eclipse toolkit JUnit runner
• Scripted runs from command line
• No need to create and maintain a server
• Similar to function-as-a-service or serverless,
where the server starts only when needed.
IBM Integration / © 2021 IBM Corporation 11
⚫ Server setting allows “bulk” recording of messages through running flows
• ibmint generate tests command creates unit tests based on recorded messages
Source +
IaC
Repository
New or changed
code, etc
Recorded Test Data
ACE test server
Test generator
IBM Integration / © 2021 IBM Corporation 12
Capture existing messages to create tests
ACE in
pipelines
Key goal is to fit in with any pipeline technology
• Not trying to replace github, Jenkins, Tekton, ArgoCD,
gitlab, etc, but will work with all of them
Stages that use ACE have lots of other tools in place also
• Ant/Maven/Gradle/etc
• ACE can be run from anywhere
• IntegrationServer-based tests easy to run
ACE testing in multiple places
• Automated unit and integration tests
Extract Build Test
Extract Build Test
Push
image
Pull image
Integration
Test
Manual QA
test
Push to
next stage
Source
Repository
CI build
ACE application pipeline
CD pipeline
ACE toolkit
Container
Registry
IBM Integration / © 2021 IBM Corporation 14
Where does ACE fit?
ACE does not store persistent data, and is best seen as application layer
• MQSI (long ago) would have fit on the other side
Code as well as configuration
• BAR files are not the same as MQSC files
Application layer (transient)
Java
Node.js
ACE
Python
Persistence layer
Database
MQ
State
storage and
messaging
IBM Integration / © 2021 IBM Corporation 15
ACE and MQ infrastructure layers
Demo
pipeline
https://github.com/ot4i/ace-demo-pipeline
IBM Integration / © 2021 IBM Corporation 17
Tekton, github, Maven, DB2onCloud, and IBM Cloud (free!)
GitHub Action to unit test changes
Blocks changes that break tests from
being merged
Would also be compatible with
CircleCI, GitLab, TravisCI, etc.
IBM Integration / © 2021 IBM Corporation
Continuous Integration
Topic Summary
ACE v12 Natural fit for current and future integration needs, combining proven
integration technology with modern software development.
Testing integration
solutions
Standard test approaches apply, plus additional techniques for integration
complexity; tooling support and auto-generated tests enable agility.
ACE in a pipeline Fits naturally in modern CI/CD pipelines and container infrastructure.
Demo pipeline Public repo with CI/CD pipeline available to use for free.
19
IBM Integration / © 2021 IBM Corporation
Summary
App Connect v12. Unit testing with a Pipeline Example. Trevor Dolby Architect, IBM App Connect Enterprise.pdf

More Related Content

Similar to App Connect v12. Unit testing with a Pipeline Example. Trevor Dolby Architect, IBM App Connect Enterprise.pdf

.net Based Component Technologies
.net Based Component Technologies.net Based Component Technologies
.net Based Component Technologiesprakashk453625
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOpsEklove Mohan
 
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...DevOps Enterprise Summit
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...Yong Feng
 
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at ScaleDOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at ScaleGene Kim
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018Patrick Chanezon
 
Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Mary Joy Sabal
 
DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryAmazon Web Services
 
SRV312 DevOps on AWS: Building Systems to Deliver Faster
SRV312 DevOps on AWS: Building Systems to Deliver FasterSRV312 DevOps on AWS: Building Systems to Deliver Faster
SRV312 DevOps on AWS: Building Systems to Deliver FasterAmazon Web Services
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareAsp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareRitwik Das
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realistsKarthik Gaekwad
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.netsuraj pandey
 
DevOps on AWS: DevOps Day San Francisco
DevOps on AWS: DevOps Day San FranciscoDevOps on AWS: DevOps Day San Francisco
DevOps on AWS: DevOps Day San FranciscoAmazon Web Services
 
Structured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, AccentureStructured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, AccentureDocker, Inc.
 
Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectDevOps.com
 
JCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxJCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxGrace Jansen
 
Building a CI/CD Pipeline for PHP apps
Building a CI/CD Pipeline for PHP appsBuilding a CI/CD Pipeline for PHP apps
Building a CI/CD Pipeline for PHP appsJuan Manuel Torres
 
Data Agility for Devops - OSI 2018
Data Agility for Devops - OSI 2018Data Agility for Devops - OSI 2018
Data Agility for Devops - OSI 2018OpenEBS
 

Similar to App Connect v12. Unit testing with a Pipeline Example. Trevor Dolby Architect, IBM App Connect Enterprise.pdf (20)

.net Based Component Technologies
.net Based Component Technologies.net Based Component Technologies
.net Based Component Technologies
 
Getting to Walk with DevOps
Getting to Walk with DevOpsGetting to Walk with DevOps
Getting to Walk with DevOps
 
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
Greg Maxey - Electric Cloud - Process as Code: An Introduction to the Electri...
 
Kubernetes @ meetic
Kubernetes @ meeticKubernetes @ meetic
Kubernetes @ meetic
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at ScaleDOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
DOES SFO 2016 - Greg Maxey and Laurent Rochette - DSL at Scale
 
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
 
Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18Wellington MuleSoft Meetup 2021-02-18
Wellington MuleSoft Meetup 2021-02-18
 
DevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software DeliveryDevOps on AWS - Accelerating Software Delivery
DevOps on AWS - Accelerating Software Delivery
 
SRV312 DevOps on AWS: Building Systems to Deliver Faster
SRV312 DevOps on AWS: Building Systems to Deliver FasterSRV312 DevOps on AWS: Building Systems to Deliver Faster
SRV312 DevOps on AWS: Building Systems to Deliver Faster
 
Asp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech SoftwareAsp.NETZERO - A Workshop Presentation by Citytech Software
Asp.NETZERO - A Workshop Presentation by Citytech Software
 
Containers, microservices and serverless for realists
Containers, microservices and serverless for realistsContainers, microservices and serverless for realists
Containers, microservices and serverless for realists
 
Introduction to vb.net
Introduction to vb.netIntroduction to vb.net
Introduction to vb.net
 
DevOps on AWS: DevOps Day San Francisco
DevOps on AWS: DevOps Day San FranciscoDevOps on AWS: DevOps Day San Francisco
DevOps on AWS: DevOps Day San Francisco
 
Structured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, AccentureStructured Container Delivery by Oscar Renalias, Accenture
Structured Container Delivery by Oscar Renalias, Accenture
 
Modernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-ArchitectModernizing Testing as Apps Re-Architect
Modernizing Testing as Apps Re-Architect
 
JCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptxJCON_15FactorWorkshop.pptx
JCON_15FactorWorkshop.pptx
 
Building a CI/CD Pipeline for PHP apps
Building a CI/CD Pipeline for PHP appsBuilding a CI/CD Pipeline for PHP apps
Building a CI/CD Pipeline for PHP apps
 
Data Agility for Devops - OSI 2018
Data Agility for Devops - OSI 2018Data Agility for Devops - OSI 2018
Data Agility for Devops - OSI 2018
 
Developer Tools at AWS 2018.pdf
Developer Tools at AWS 2018.pdfDeveloper Tools at AWS 2018.pdf
Developer Tools at AWS 2018.pdf
 

More from mrle7

abc1.pptx
abc1.pptxabc1.pptx
abc1.pptxmrle7
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptxmrle7
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptxmrle7
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptxmrle7
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptxmrle7
 
restapitest-anil-200517181251.pdf
restapitest-anil-200517181251.pdfrestapitest-anil-200517181251.pdf
restapitest-anil-200517181251.pdfmrle7
 

More from mrle7 (6)

abc1.pptx
abc1.pptxabc1.pptx
abc1.pptx
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptx
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptx
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptx
 
abc1.pptx
abc1.pptxabc1.pptx
abc1.pptx
 
restapitest-anil-200517181251.pdf
restapitest-anil-200517181251.pdfrestapitest-anil-200517181251.pdf
restapitest-anil-200517181251.pdf
 

Recently uploaded

Call Girls Jejuri Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Jejuri Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Jejuri Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Jejuri Call Me 7737669865 Budget Friendly No Advance Bookingroncy bisnoi
 
VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...
VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...
VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...Call Girls in Nagpur High Profile
 
$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...
$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...
$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...PsychicRuben LoveSpells
 
Hot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Hot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp NumberHot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Hot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Numberkumarajju5765
 
Call Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance Bookingtanu pandey
 
Call Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance Bookingroncy bisnoi
 
VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...SUHANI PANDEY
 
VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...
VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...
VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...SUHANI PANDEY
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...SUHANI PANDEY
 
The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...ranjana rawat
 
NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...
NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...
NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...Amil baba
 
(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
CSR_Module5_Green Earth Initiative, Tree Planting Day
CSR_Module5_Green Earth Initiative, Tree Planting DayCSR_Module5_Green Earth Initiative, Tree Planting Day
CSR_Module5_Green Earth Initiative, Tree Planting DayGeorgeDiamandis11
 
CSR_Tested activities in the classroom -EN
CSR_Tested activities in the classroom -ENCSR_Tested activities in the classroom -EN
CSR_Tested activities in the classroom -ENGeorgeDiamandis11
 
Booking open Available Pune Call Girls Yewalewadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Yewalewadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Yewalewadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Yewalewadi 6297143586 Call Hot Indian...Call Girls in Nagpur High Profile
 
Proposed Amendments to Chapter 15, Article X: Wetland Conservation Areas
Proposed Amendments to Chapter 15, Article X: Wetland Conservation AreasProposed Amendments to Chapter 15, Article X: Wetland Conservation Areas
Proposed Amendments to Chapter 15, Article X: Wetland Conservation Areas💥Victoria K. Colangelo
 
Call Girls Moshi Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Moshi Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Moshi Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Moshi Call Me 7737669865 Budget Friendly No Advance Bookingroncy bisnoi
 
VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...
VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...
VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...SUHANI PANDEY
 

Recently uploaded (20)

Call Girls Jejuri Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Jejuri Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Jejuri Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Jejuri Call Me 7737669865 Budget Friendly No Advance Booking
 
VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...
VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...
VVIP Pune Call Girls Koregaon Park (7001035870) Pune Escorts Nearby with Comp...
 
$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...
$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...
$ Love Spells 💎 (310) 882-6330 in Pennsylvania, PA | Psychic Reading Best Bla...
 
Hot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Hot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp NumberHot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
Hot Call Girls 🫤 Malviya Nagar ➡️ 9711199171 ➡️ Delhi 🫦 Whatsapp Number
 
Call Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Pune Airport Call Me 7737669865 Budget Friendly No Advance Booking
 
Call Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Magarpatta Call Me 7737669865 Budget Friendly No Advance Booking
 
VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Wagholi ( Pune ) Call ON 8005736733 Starting From 5K to ...
 
VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...
VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...
VIP Model Call Girls Chakan ( Pune ) Call ON 8005736733 Starting From 5K to 2...
 
VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...
VIP Model Call Girls Hadapsar ( Pune ) Call ON 8005736733 Starting From 5K to...
 
young Whatsapp Call Girls in Delhi Cantt🔝 9953056974 🔝 escort service
young Whatsapp Call Girls in Delhi Cantt🔝 9953056974 🔝 escort serviceyoung Whatsapp Call Girls in Delhi Cantt🔝 9953056974 🔝 escort service
young Whatsapp Call Girls in Delhi Cantt🔝 9953056974 🔝 escort service
 
The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Shirwal 8250192130 Will You Miss This Cha...
 
NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...
NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...
NO1 Verified kala jadu karne wale ka contact number kala jadu karne wale baba...
 
(NEHA) Call Girls Navi Mumbai Call Now 8250077686 Navi Mumbai Escorts 24x7
(NEHA) Call Girls Navi Mumbai Call Now 8250077686 Navi Mumbai Escorts 24x7(NEHA) Call Girls Navi Mumbai Call Now 8250077686 Navi Mumbai Escorts 24x7
(NEHA) Call Girls Navi Mumbai Call Now 8250077686 Navi Mumbai Escorts 24x7
 
(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(AISHA) Wagholi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
CSR_Module5_Green Earth Initiative, Tree Planting Day
CSR_Module5_Green Earth Initiative, Tree Planting DayCSR_Module5_Green Earth Initiative, Tree Planting Day
CSR_Module5_Green Earth Initiative, Tree Planting Day
 
CSR_Tested activities in the classroom -EN
CSR_Tested activities in the classroom -ENCSR_Tested activities in the classroom -EN
CSR_Tested activities in the classroom -EN
 
Booking open Available Pune Call Girls Yewalewadi 6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Yewalewadi  6297143586 Call Hot Indian...Booking open Available Pune Call Girls Yewalewadi  6297143586 Call Hot Indian...
Booking open Available Pune Call Girls Yewalewadi 6297143586 Call Hot Indian...
 
Proposed Amendments to Chapter 15, Article X: Wetland Conservation Areas
Proposed Amendments to Chapter 15, Article X: Wetland Conservation AreasProposed Amendments to Chapter 15, Article X: Wetland Conservation Areas
Proposed Amendments to Chapter 15, Article X: Wetland Conservation Areas
 
Call Girls Moshi Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Moshi Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Moshi Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Moshi Call Me 7737669865 Budget Friendly No Advance Booking
 
VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...
VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...
VVIP Pune Call Girls Vishal Nagar WhatSapp Number 8005736733 With Elite Staff...
 

App Connect v12. Unit testing with a Pipeline Example. Trevor Dolby Architect, IBM App Connect Enterprise.pdf

  • 1. App Connect v12 Unit testing with a Pipeline Example — Trevor Dolby Architect, IBM App Connect Enterprise tdolby@uk.ibm.com
  • 2. Contents App Connect Enterprise (ACE) v12 Background Testing integration solutions Challenges and techniques ACE in pipelines DevOps and containers Demo pipeline GitHub, Tekton, and CI IBM Integration / © 2021 IBM Corporation
  • 4. What is integration? Integration is how systems and applications are connected to enable the systems and applications to exchange data with each other or with other connected and integrated applications and systems no matter what the data and/or protocols are being used between them. Provides: 1. Connectivity 2. Routing 3. Transformation to enable sharing of data between applications and services securely irrespective of the data format and protocol that these system and services use between them IBM Integration / © 2021 IBM Corporation 4
  • 5. A. Fine-grained deployment B. Decentralized ownership C. Cloud native infrastructure API API API API API API API API API Traditional application integration (centrally provisioned and administered silo) IBM Integration / © 2021 IBM Corporation 5 Agile Integration Architecture
  • 6. App Connect Enterprise v12 • Built-in nodes encapsulate transports, technologies and applications: • Connecting with client applications • Routing messages • Transforming and enriching messages • Processing events • Handling errors in message flows • Reduce the amount of custom code required to implement solutions • Built-in facilities like activity log and resource statistics • High performance and scalability • Feature rich Message Modelling IBM Integration / © 2021 IBM Corporation 6
  • 8. Functionality, quality, reliability, serviceability, etc Integration has more external interactions • More infrastructure (hardware, network, etc) changes • External service upgraded • Back-end service changes Requires more test approaches than ordinary application development, but similar techniques apply No one test shape fits everyone • Traditional test pyramid principles still valid • Realistic testing looks less like an ideal pyramid and more like a test trophy or microservice honeycomb E2E Component Unit Test IBM Integration / © 2021 IBM Corporation 8 Testing: prove business requirements met
  • 9. • Test one node • Use simple or recorded messages • No down flow propagation at test time • No interaction with the outside world • Check map or ESQL changes haven’t broken behaviour • Identifying issues & analysis scoped to a single node • Spy & assert correct behaviour Service DB IBM Integration / © 2021 IBM Corporation 9 Test a single message flow node
  • 10. Test external transport link • Test one node • Interacts with the outside world • Check DB connection works, and that schemas are compatible • Not dependent on REST service • Could run a similar test on the REST call without needing a DB Service DB IBM Integration / © 2021 IBM Corporation 10
  • 11. Create and run tests during development Create tests for message flows and nodes: • Generated automatically from message models associated with a flow • Generated using actual messages recorded during development • Written by developers starting from sample tests, tutorials, etc. Run tests without needing infrastructure: • Eclipse toolkit JUnit runner • Scripted runs from command line • No need to create and maintain a server • Similar to function-as-a-service or serverless, where the server starts only when needed. IBM Integration / © 2021 IBM Corporation 11
  • 12. ⚫ Server setting allows “bulk” recording of messages through running flows • ibmint generate tests command creates unit tests based on recorded messages Source + IaC Repository New or changed code, etc Recorded Test Data ACE test server Test generator IBM Integration / © 2021 IBM Corporation 12 Capture existing messages to create tests
  • 14. Key goal is to fit in with any pipeline technology • Not trying to replace github, Jenkins, Tekton, ArgoCD, gitlab, etc, but will work with all of them Stages that use ACE have lots of other tools in place also • Ant/Maven/Gradle/etc • ACE can be run from anywhere • IntegrationServer-based tests easy to run ACE testing in multiple places • Automated unit and integration tests Extract Build Test Extract Build Test Push image Pull image Integration Test Manual QA test Push to next stage Source Repository CI build ACE application pipeline CD pipeline ACE toolkit Container Registry IBM Integration / © 2021 IBM Corporation 14 Where does ACE fit?
  • 15. ACE does not store persistent data, and is best seen as application layer • MQSI (long ago) would have fit on the other side Code as well as configuration • BAR files are not the same as MQSC files Application layer (transient) Java Node.js ACE Python Persistence layer Database MQ State storage and messaging IBM Integration / © 2021 IBM Corporation 15 ACE and MQ infrastructure layers
  • 17. https://github.com/ot4i/ace-demo-pipeline IBM Integration / © 2021 IBM Corporation 17 Tekton, github, Maven, DB2onCloud, and IBM Cloud (free!)
  • 18. GitHub Action to unit test changes Blocks changes that break tests from being merged Would also be compatible with CircleCI, GitLab, TravisCI, etc. IBM Integration / © 2021 IBM Corporation Continuous Integration
  • 19. Topic Summary ACE v12 Natural fit for current and future integration needs, combining proven integration technology with modern software development. Testing integration solutions Standard test approaches apply, plus additional techniques for integration complexity; tooling support and auto-generated tests enable agility. ACE in a pipeline Fits naturally in modern CI/CD pipelines and container infrastructure. Demo pipeline Public repo with CI/CD pipeline available to use for free. 19 IBM Integration / © 2021 IBM Corporation Summary