SlideShare a Scribd company logo
1 of 30
Download to read offline
Direction des Technologies et du Digital
Guillaume JEANNIC
IT Architect
APIDays
New York
July 28th&29th 2020
Automation API Testing:
When Postman collection
are generated from
OpenAPI specifications
Direction des Technologies et du Digital
Guillaume JEANNIC
IT Architect
APIDays
Paris
December 10th 2020
Automation API Testing:
When Postman collection
are generated from
OpenAPI specifications
Direction des Technologies et du Digital
Submitted Abstract
This talk is about our journey into designing test automation for our new API for document management
services (insurance business).
Taking into consideration our testing population (non technician), our specification process
(OpenAPI3/Swagger design not generated from sources), I chose Postman as a tool to automate testing.
First creating Postman collection by hand, then injecting OpenAPI specifications into JSON schema
validation, I finally built a Node.js application that build Postman collections from JSON test scenarios and
iterations data, and run them using newman library as part of the CI.
3
Guillaume Jeannic
IT Architect
at Cbp Group
API for Legacy Industries: Banking,
Insurance, Healthcare, and Retail
July 28 & 29, 2020
Direction des Technologies et du Digital
Our group
5
● Cbp is a subsidiary of the CEP Financial Group
○ (bought this year by Bridgepoint for around 1,3 billions €)
Direction des Technologies et du Digital
● We’re located near Nantes in France
Our location
6
Direction des Technologies et du Digital
Our business
7
● Over 26 years of experience in loan protection insurance and personal pensions
● Developing our business model throughout Europe (Spain, Germany, Italy, Austria, …)
● Main activities are:
○ Commissioned Policy Manager
○ Personalised support for our partner
organisations
Direction des Technologies et du Digital
Our operations
8
● Our operational business rests on document processing
● Nearly 100 millions documents received
● More than 100 millions documents sent
● Accross around 10 different channels
Direction des Technologies et du Digital
Our IT culture
9
● In house development
● Transforming…
○ ...from AS400 mainframe to Java / Grails
○ ...from skill teams to product teams (2017)
○ ...from on premises to AWS or private cloud (since 2018)
○ ...from synchronized and scheduled delivery to continuous delivery
○ ...from manual testing to test automation
Direction des Technologies et du Digital
Our IT project
10
● Our in-house Document Management System is more than 20 years old
● Currently building our new DMS API
and migrating our legacy system using the strangler pattern
Direction des Technologies et du Digital
● Belief: our API testing shall be automated!
● Context:
○ our testers aren’t computer scientists
○ understaffed for technical specifications
● Problem: how to make test automation friendly with no budget?
Starting point
11
Direction des Technologies et du Digital
● Belief: our API testing shall be automated!
● Context:
○ our testers aren’t computer scientists
○ understaffed for technical specification
● Problem: how to make test automation friendly with no budget?
Starting point
12
Direction des Technologies et du Digital
● Good reputation tool with a user friendly GUI
● Used before for API endpoints exploration
● Can be used for API testing
● Can be automated from CLI (newman)
● Basic usage is free
● Don’t have time for market research...
Why Postman?
13
Direction des Technologies et du Digital
PM lets you define pre-request scripts...
API Testing with Postman
14
...and test scripts executed after the request
Direction des Technologies et du Digital
● 2 key features for testing:
○ Chai assertion language
expect([1, 2]).to.be.an('array').that.does.not.include(3);
○ JSON schema validation
API Testing with Postman
15
Direction des Technologies et du Digital
● 2 key features for testing:
○ Chai assertion language
expect([1, 2]).to.be.an('array').that.does.not.include(3);
○ JSON schema validation
API Testing with Postman
16
x Not accessible enough for non technicians
x Don’t have JSON schemas of our endpoints
Direction des Technologies et du Digital
Meanwhile tester struggles...
17
?
Swagger generated from code
Myself Dev team Tester
Direction des Technologies et du Digital
Meanwhile tester struggles...
18
?
Swagger generated from code
Myself Dev team Tester
Direction des Technologies et du Digital
Change of paradigm
19
Myself Dev team Tester
Testing
Swagger generated from specifications
✓ Formal description of API
✓ Better documentation
Direction des Technologies et du Digital
#1st idea: Injecting OpenAPI specs into PM collections
20
● Open API => JSON Schemas
● Injection into Postman
Direction des Technologies et du Digital
#1st idea: Injecting OpenAPI specs into PM collections
✓ Response schema validation
without any more effort
(other than the specifications)
✓ Request schema validation
(response of an invalid request
should be KO)
x Still a lot of manual operations
21
JSON
Schema
Postman
Swagger
- Postman Collection SDK
- Postman API ($)
(1)
(2)
- JS- YAML - UI
Direction des Technologies et du Digital
Postman iteration data
22
● Feature to loop over different test data for a given set of requests
iterationData.json
[
{
"var1": val1A,
"var2": val2A
},
…
]
iterationData.csv
var1, var2
val1A, val2A
val1B, val2B
val1C, val2C
val1D, val2D
Direction des Technologies et du Digital
#2nd idea: Using Postman iteration data as request data
23
requestData.json
[
{
"key": "PostInputDocumentRequest",
"path": "/private/secure/input/documents",
"method": "post",
"auth": { … }
"queryParams": { … }
"body": { … }
"expectedResponse": {
“status”: 200,
“body”: { … }
}
}
]
iterationData.json
[
{
"var1": val1,
"var2": val2
},
…
]
✓ Test scenario defined in Postman
✓ Request data defined using JSON iteration data
✓ Response body is automatically compared to expected response data
x But...
Direction des Technologies et du Digital
But...
24
JSON
Schema
Postman
(1)
(2)
- JS- YAML - UI
x Not sustainable
- Still a lot of copy/paste in Postman
(Lacking template definitions)
- Lots of interactions to inject the
specs
x Some limitations
- Can’t set files in request bodies from
iteration data
x Unpleasant ergonomy
- Must specify manually the Postman
items matching the iterationData in
collection runner
- Can’t use Postman easily when
using iteration data
- Can’t replay tests in collection
runner when using iteration data
Direction des Technologies et du Digital
#3rd idea: Building collections from scenarios in JSON
25
scenario.json
{
"name": "Creation of an input document with content",
"steps": [
...,
{
"key": "PostInputDocumentRequest",
"path": "/private/secure/input/documents",
"method": "post",
"auth": {
"type": "bearer",
"bearer": {
"token": "{{dmsAccessToken}}"
}
},
"savings": {
"dmsCreatedDocumentUuid": "pm.response.json().data[0].document.id",
"dmsCreatedReceptionUuid": "pm.response.json().data[0].reception.id",
"dmsUploadUrl": "pm.response.json().data[0].upload.url",
"dmsUploadUuid": "pm.response.json().data[0].upload.formFields.uploadUuid"
}
},
...
✓ Defining Postman items
relationship with JSON convention
- Using Postman variables
- Saving response data into
Postman variables
Direction des Technologies et du Digital
ddd
#4th idea: Running the tests from the application
26
Postman- Express
- Postman
Collection SDK
- Newman
Node.js Express app
- generating Postman
collections
- running Newman
- YAML (specifications)
- JS
- JSON (tests)
Import generated collection into
Postman for debugging purpose
only
newman-reporter-htmlextra
- Import from link
Direction des Technologies et du Digital
Finally: API testing automation integrated with the CI
27
Postman
- YAML (specifications)
- JS
- JSON (tests)
- Express
- Postman
Collection SDK
- Newman
Run tests from the CI and display
the result in Google Chat
- Import from link
Direction des Technologies et du Digital
And now?
28
● The test project is adopted by the team
● Consistent API endpoints with strong documentation
● Postman collections as integration examples
● Devs immediately know when non regression tests fail
● Tester can focus on designing new scenarios
● We can deliver new features of fixes very quickly
Tester
Dev (CI integration) Tester
Dev (False positive fix)
Direction des Technologies et du Digital
And now?
29
● The test project is adopted by the team
● Consistent API endpoints with strong documentation
● Postman collections as integration examples
● Devs immediately know when non regression tests fail
● Tester can focus on designing new scenarios
● We can deliver new features of fixes very quickly
Thank you
Any questions?
Tester
Dev (CI integration) Tester
Dev (False positive fix)
Cbp filiale du
Groupe Financière CEP
11, rue Royale
75008 PARIS
Tel : + 33 1 80 52 35 00
Cbp Group
www.cbp-group.com
11, rue Royale
75008 PARIS
Tel : + 33 1 80 52 32 90
30

More Related Content

What's hot

apidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheim
apidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheimapidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheim
apidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheimapidays
 
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...HostedbyConfluent
 
apidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Rao
apidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Raoapidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Rao
apidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Raoapidays
 
Api clarity webinar
Api clarity webinarApi clarity webinar
Api clarity webinarLibbySchulze
 
apidays LIVE Paris - The Business of APIs by Jed Ng
apidays LIVE Paris - The Business of APIs by Jed Ngapidays LIVE Paris - The Business of APIs by Jed Ng
apidays LIVE Paris - The Business of APIs by Jed Ngapidays
 
apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...
apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...
apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...apidays
 
apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...
apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...
apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...apidays
 
Blowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on MicroservicesBlowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on MicroservicesNordic APIs
 
[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...
[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...
[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...WSO2
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIsWSO2
 
Clean architectures with fast api pycones
Clean architectures with fast api   pyconesClean architectures with fast api   pycones
Clean architectures with fast api pyconesAlvaro Del Castillo
 
TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...
TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...
TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...Michael Kuehne-Schlinkert
 
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...apidays
 
apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...
apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...
apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...apidays
 
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...apidays
 
Rest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbookRest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbookKaty Slemon
 
Executing on API Developer Experience
Executing on API Developer Experience Executing on API Developer Experience
Executing on API Developer Experience SmartBear
 
Essential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramEssential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramJason Harmon
 
Building APIs in a Cloud Native Era
Building APIs in a Cloud Native EraBuilding APIs in a Cloud Native Era
Building APIs in a Cloud Native EraNuwan Dias
 
APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...
APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...
APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...apidays
 

What's hot (20)

apidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheim
apidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheimapidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheim
apidays LIVE Paris - GraphQL: the AppSec perspective by Vladimir de Turckheim
 
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
Automated Apache Kafka Mocking and Testing with AsyncAPI | Hugo Guerrero, Red...
 
apidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Rao
apidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Raoapidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Rao
apidays LIVE Paris - The Rise of GraphQL for database APIs by Karthic Rao
 
Api clarity webinar
Api clarity webinarApi clarity webinar
Api clarity webinar
 
apidays LIVE Paris - The Business of APIs by Jed Ng
apidays LIVE Paris - The Business of APIs by Jed Ngapidays LIVE Paris - The Business of APIs by Jed Ng
apidays LIVE Paris - The Business of APIs by Jed Ng
 
apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...
apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...
apidays LIVE London 2021 - Application to API Security, drivers to the Shift ...
 
apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...
apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...
apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apach...
 
Blowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on MicroservicesBlowing up the Monolith: Practical Advice on Microservices
Blowing up the Monolith: Practical Advice on Microservices
 
[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...
[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...
[APIdays INTERFACE 2021] Now that we have K8s, can we stop re-inventing API p...
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs
 
Clean architectures with fast api pycones
Clean architectures with fast api   pyconesClean architectures with fast api   pycones
Clean architectures with fast api pycones
 
TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...
TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...
TDD for APIs in a Microservice World (Short Version) by Michael Kuehne-Schlin...
 
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
apidays LIVE Hong Kong 2021 - Automating the API Product Lifecycle by Jeremy ...
 
apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...
apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...
apidays LIVE Australia 2021 - API & Event Discovery by Jason D'Souza, Nationa...
 
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
 
Rest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbookRest api best practices – comprehensive handbook
Rest api best practices – comprehensive handbook
 
Executing on API Developer Experience
Executing on API Developer Experience Executing on API Developer Experience
Executing on API Developer Experience
 
Essential Ingredients for a Successful API Program
Essential Ingredients for a Successful API ProgramEssential Ingredients for a Successful API Program
Essential Ingredients for a Successful API Program
 
Building APIs in a Cloud Native Era
Building APIs in a Cloud Native EraBuilding APIs in a Cloud Native Era
Building APIs in a Cloud Native Era
 
APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...
APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...
APIdays Singapore 2019 - Airbnb's Great Migration: Service APIs at scale, Jes...
 

Similar to apidays LIVE Paris - Automation API Testing by Guillaume Jeannic

apidays LIVE New York - Automation API Testing: with Postman collection are ...
apidays LIVE New York -  Automation API Testing: with Postman collection are ...apidays LIVE New York -  Automation API Testing: with Postman collection are ...
apidays LIVE New York - Automation API Testing: with Postman collection are ...apidays
 
Building Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesBuilding Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesChris Schalk
 
Optimizely Agent: Scaling Resilient Feature Delivery
Optimizely Agent: Scaling Resilient Feature DeliveryOptimizely Agent: Scaling Resilient Feature Delivery
Optimizely Agent: Scaling Resilient Feature DeliveryOptimizely
 
Quick Intro to Google Cloud Technologies
Quick Intro to Google Cloud TechnologiesQuick Intro to Google Cloud Technologies
Quick Intro to Google Cloud TechnologiesChris Schalk
 
Building Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesBuilding Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesChris Schalk
 
Building Apps on Google Cloud Technologies
Building Apps on Google Cloud TechnologiesBuilding Apps on Google Cloud Technologies
Building Apps on Google Cloud TechnologiesChris Schalk
 
Introduction to Google Cloud platform technologies
Introduction to Google Cloud platform technologiesIntroduction to Google Cloud platform technologies
Introduction to Google Cloud platform technologiesChris Schalk
 
Introduction to Google's Cloud Technologies
Introduction to Google's Cloud TechnologiesIntroduction to Google's Cloud Technologies
Introduction to Google's Cloud TechnologiesChris Schalk
 
Intro to Google's Cloud Technologies
Intro to Google's Cloud TechnologiesIntro to Google's Cloud Technologies
Intro to Google's Cloud TechnologiesChris Schalk
 
Android Unit Testing With Robolectric
Android Unit Testing With RobolectricAndroid Unit Testing With Robolectric
Android Unit Testing With RobolectricDanny Preussler
 
MongoDB Stich Overview
MongoDB Stich OverviewMongoDB Stich Overview
MongoDB Stich OverviewMongoDB
 
MongoDB Stitch Introduction
MongoDB Stitch IntroductionMongoDB Stitch Introduction
MongoDB Stitch IntroductionMongoDB
 
Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...
Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...
Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...Databricks
 
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB
 
Usable APIs at Scale
Usable APIs at ScaleUsable APIs at Scale
Usable APIs at ScaleTim Burks
 
Node in Production at Aviary
Node in Production at AviaryNode in Production at Aviary
Node in Production at AviaryAviary
 
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019 Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019 Chun-Yu Tseng
 
Build an AI/ML-driven image archive processing workflow: Image archive, analy...
Build an AI/ML-driven image archive processing workflow: Image archive, analy...Build an AI/ML-driven image archive processing workflow: Image archive, analy...
Build an AI/ML-driven image archive processing workflow: Image archive, analy...wesley chun
 
BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!Craig Schumann
 
OpenAPI development with Python
OpenAPI development with PythonOpenAPI development with Python
OpenAPI development with PythonTakuro Wada
 

Similar to apidays LIVE Paris - Automation API Testing by Guillaume Jeannic (20)

apidays LIVE New York - Automation API Testing: with Postman collection are ...
apidays LIVE New York -  Automation API Testing: with Postman collection are ...apidays LIVE New York -  Automation API Testing: with Postman collection are ...
apidays LIVE New York - Automation API Testing: with Postman collection are ...
 
Building Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesBuilding Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud Technologies
 
Optimizely Agent: Scaling Resilient Feature Delivery
Optimizely Agent: Scaling Resilient Feature DeliveryOptimizely Agent: Scaling Resilient Feature Delivery
Optimizely Agent: Scaling Resilient Feature Delivery
 
Quick Intro to Google Cloud Technologies
Quick Intro to Google Cloud TechnologiesQuick Intro to Google Cloud Technologies
Quick Intro to Google Cloud Technologies
 
Building Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud TechnologiesBuilding Integrated Applications on Google's Cloud Technologies
Building Integrated Applications on Google's Cloud Technologies
 
Building Apps on Google Cloud Technologies
Building Apps on Google Cloud TechnologiesBuilding Apps on Google Cloud Technologies
Building Apps on Google Cloud Technologies
 
Introduction to Google Cloud platform technologies
Introduction to Google Cloud platform technologiesIntroduction to Google Cloud platform technologies
Introduction to Google Cloud platform technologies
 
Introduction to Google's Cloud Technologies
Introduction to Google's Cloud TechnologiesIntroduction to Google's Cloud Technologies
Introduction to Google's Cloud Technologies
 
Intro to Google's Cloud Technologies
Intro to Google's Cloud TechnologiesIntro to Google's Cloud Technologies
Intro to Google's Cloud Technologies
 
Android Unit Testing With Robolectric
Android Unit Testing With RobolectricAndroid Unit Testing With Robolectric
Android Unit Testing With Robolectric
 
MongoDB Stich Overview
MongoDB Stich OverviewMongoDB Stich Overview
MongoDB Stich Overview
 
MongoDB Stitch Introduction
MongoDB Stitch IntroductionMongoDB Stitch Introduction
MongoDB Stitch Introduction
 
Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...
Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...
Analytics Zoo: Building Analytics and AI Pipeline for Apache Spark and BigDL ...
 
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
MongoDB World 2018: Ch-Ch-Ch-Ch-Changes: Taking Your Stitch Application to th...
 
Usable APIs at Scale
Usable APIs at ScaleUsable APIs at Scale
Usable APIs at Scale
 
Node in Production at Aviary
Node in Production at AviaryNode in Production at Aviary
Node in Production at Aviary
 
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019 Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
Build and Host Real-world Machine Learning Services from Scratch @ pycontw2019
 
Build an AI/ML-driven image archive processing workflow: Image archive, analy...
Build an AI/ML-driven image archive processing workflow: Image archive, analy...Build an AI/ML-driven image archive processing workflow: Image archive, analy...
Build an AI/ML-driven image archive processing workflow: Image archive, analy...
 
BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!BP204 - Take a REST and put your data to work with APIs!
BP204 - Take a REST and put your data to work with APIs!
 
OpenAPI development with Python
OpenAPI development with PythonOpenAPI development with Python
OpenAPI development with Python
 

More from apidays

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, Adobeapidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
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...apidays
 
Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...
Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...
Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...apidays
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...
Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...
Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...apidays
 
Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...
Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...
Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...apidays
 
Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...
Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...
Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...apidays
 
Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...
Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...
Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...apidays
 
Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...
Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...
Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...apidays
 
Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...
Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...
Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...apidays
 
Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...
Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...
Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...apidays
 
Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...
Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...
Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...apidays
 
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
 
Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...
Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...
Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...apidays
 
Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...
Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...
Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...apidays
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbuapidays
 
Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...
Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...
Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...apidays
 

More from apidays (20)

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
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
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...
 
Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...
Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...
Apidays New York 2024 - The secrets to Graph success, by Leah Hurwich Adler, ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...
Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...
Apidays New York 2024 - API Discovery - From Crawl to Run by Rob Dickinson, G...
 
Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...
Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...
Apidays Singapore 2024 - Building with the Planet in Mind by Sandeep Joshi, M...
 
Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...
Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...
Apidays Singapore 2024 - Connecting Cross Border Commerce with Payments by Gu...
 
Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...
Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...
Apidays Singapore 2024 - Privacy Enhancing Technologies for AI by Mark Choo, ...
 
Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...
Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...
Apidays Singapore 2024 - Blending AI and IoT for Smarter Health by Matthew Ch...
 
Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...
Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...
Apidays Singapore 2024 - OpenTelemetry for API Monitoring by Danielle Kayumbi...
 
Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...
Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...
Apidays Singapore 2024 - Connecting Product and Engineering Teams with Testin...
 
Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...
Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...
Apidays Singapore 2024 - The Growing Carbon Footprint of Digitalization and H...
 
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 Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...
Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...
Apidays Singapore 2024 - API Monitoring x SRE by Ryan Ashneil and Eugene Wong...
 
Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...
Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...
Apidays Singapore 2024 - A nuanced approach on AI costs and benefits for the ...
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...
Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...
Apidays Singapore 2024 - How APIs drive business at BNP Paribas by Quy-Doan D...
 

Recently uploaded

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseWSO2
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceIES VE
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...caitlingebhard1
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
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 WorkerThousandEyes
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringWSO2
 

Recently uploaded (20)

Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
Decarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational PerformanceDecarbonising Commercial Real Estate: The Role of Operational Performance
Decarbonising Commercial Real Estate: The Role of Operational Performance
 
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
WSO2 Micro Integrator for Enterprise Integration in a Decentralized, Microser...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
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
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Choreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software EngineeringChoreo: Empowering the Future of Enterprise Software Engineering
Choreo: Empowering the Future of Enterprise Software Engineering
 

apidays LIVE Paris - Automation API Testing by Guillaume Jeannic

  • 1. Direction des Technologies et du Digital Guillaume JEANNIC IT Architect APIDays New York July 28th&29th 2020 Automation API Testing: When Postman collection are generated from OpenAPI specifications
  • 2. Direction des Technologies et du Digital Guillaume JEANNIC IT Architect APIDays Paris December 10th 2020 Automation API Testing: When Postman collection are generated from OpenAPI specifications
  • 3. Direction des Technologies et du Digital Submitted Abstract This talk is about our journey into designing test automation for our new API for document management services (insurance business). Taking into consideration our testing population (non technician), our specification process (OpenAPI3/Swagger design not generated from sources), I chose Postman as a tool to automate testing. First creating Postman collection by hand, then injecting OpenAPI specifications into JSON schema validation, I finally built a Node.js application that build Postman collections from JSON test scenarios and iterations data, and run them using newman library as part of the CI. 3
  • 4. Guillaume Jeannic IT Architect at Cbp Group API for Legacy Industries: Banking, Insurance, Healthcare, and Retail July 28 & 29, 2020
  • 5. Direction des Technologies et du Digital Our group 5 ● Cbp is a subsidiary of the CEP Financial Group ○ (bought this year by Bridgepoint for around 1,3 billions €)
  • 6. Direction des Technologies et du Digital ● We’re located near Nantes in France Our location 6
  • 7. Direction des Technologies et du Digital Our business 7 ● Over 26 years of experience in loan protection insurance and personal pensions ● Developing our business model throughout Europe (Spain, Germany, Italy, Austria, …) ● Main activities are: ○ Commissioned Policy Manager ○ Personalised support for our partner organisations
  • 8. Direction des Technologies et du Digital Our operations 8 ● Our operational business rests on document processing ● Nearly 100 millions documents received ● More than 100 millions documents sent ● Accross around 10 different channels
  • 9. Direction des Technologies et du Digital Our IT culture 9 ● In house development ● Transforming… ○ ...from AS400 mainframe to Java / Grails ○ ...from skill teams to product teams (2017) ○ ...from on premises to AWS or private cloud (since 2018) ○ ...from synchronized and scheduled delivery to continuous delivery ○ ...from manual testing to test automation
  • 10. Direction des Technologies et du Digital Our IT project 10 ● Our in-house Document Management System is more than 20 years old ● Currently building our new DMS API and migrating our legacy system using the strangler pattern
  • 11. Direction des Technologies et du Digital ● Belief: our API testing shall be automated! ● Context: ○ our testers aren’t computer scientists ○ understaffed for technical specifications ● Problem: how to make test automation friendly with no budget? Starting point 11
  • 12. Direction des Technologies et du Digital ● Belief: our API testing shall be automated! ● Context: ○ our testers aren’t computer scientists ○ understaffed for technical specification ● Problem: how to make test automation friendly with no budget? Starting point 12
  • 13. Direction des Technologies et du Digital ● Good reputation tool with a user friendly GUI ● Used before for API endpoints exploration ● Can be used for API testing ● Can be automated from CLI (newman) ● Basic usage is free ● Don’t have time for market research... Why Postman? 13
  • 14. Direction des Technologies et du Digital PM lets you define pre-request scripts... API Testing with Postman 14 ...and test scripts executed after the request
  • 15. Direction des Technologies et du Digital ● 2 key features for testing: ○ Chai assertion language expect([1, 2]).to.be.an('array').that.does.not.include(3); ○ JSON schema validation API Testing with Postman 15
  • 16. Direction des Technologies et du Digital ● 2 key features for testing: ○ Chai assertion language expect([1, 2]).to.be.an('array').that.does.not.include(3); ○ JSON schema validation API Testing with Postman 16 x Not accessible enough for non technicians x Don’t have JSON schemas of our endpoints
  • 17. Direction des Technologies et du Digital Meanwhile tester struggles... 17 ? Swagger generated from code Myself Dev team Tester
  • 18. Direction des Technologies et du Digital Meanwhile tester struggles... 18 ? Swagger generated from code Myself Dev team Tester
  • 19. Direction des Technologies et du Digital Change of paradigm 19 Myself Dev team Tester Testing Swagger generated from specifications ✓ Formal description of API ✓ Better documentation
  • 20. Direction des Technologies et du Digital #1st idea: Injecting OpenAPI specs into PM collections 20 ● Open API => JSON Schemas ● Injection into Postman
  • 21. Direction des Technologies et du Digital #1st idea: Injecting OpenAPI specs into PM collections ✓ Response schema validation without any more effort (other than the specifications) ✓ Request schema validation (response of an invalid request should be KO) x Still a lot of manual operations 21 JSON Schema Postman Swagger - Postman Collection SDK - Postman API ($) (1) (2) - JS- YAML - UI
  • 22. Direction des Technologies et du Digital Postman iteration data 22 ● Feature to loop over different test data for a given set of requests iterationData.json [ { "var1": val1A, "var2": val2A }, … ] iterationData.csv var1, var2 val1A, val2A val1B, val2B val1C, val2C val1D, val2D
  • 23. Direction des Technologies et du Digital #2nd idea: Using Postman iteration data as request data 23 requestData.json [ { "key": "PostInputDocumentRequest", "path": "/private/secure/input/documents", "method": "post", "auth": { … } "queryParams": { … } "body": { … } "expectedResponse": { “status”: 200, “body”: { … } } } ] iterationData.json [ { "var1": val1, "var2": val2 }, … ] ✓ Test scenario defined in Postman ✓ Request data defined using JSON iteration data ✓ Response body is automatically compared to expected response data x But...
  • 24. Direction des Technologies et du Digital But... 24 JSON Schema Postman (1) (2) - JS- YAML - UI x Not sustainable - Still a lot of copy/paste in Postman (Lacking template definitions) - Lots of interactions to inject the specs x Some limitations - Can’t set files in request bodies from iteration data x Unpleasant ergonomy - Must specify manually the Postman items matching the iterationData in collection runner - Can’t use Postman easily when using iteration data - Can’t replay tests in collection runner when using iteration data
  • 25. Direction des Technologies et du Digital #3rd idea: Building collections from scenarios in JSON 25 scenario.json { "name": "Creation of an input document with content", "steps": [ ..., { "key": "PostInputDocumentRequest", "path": "/private/secure/input/documents", "method": "post", "auth": { "type": "bearer", "bearer": { "token": "{{dmsAccessToken}}" } }, "savings": { "dmsCreatedDocumentUuid": "pm.response.json().data[0].document.id", "dmsCreatedReceptionUuid": "pm.response.json().data[0].reception.id", "dmsUploadUrl": "pm.response.json().data[0].upload.url", "dmsUploadUuid": "pm.response.json().data[0].upload.formFields.uploadUuid" } }, ... ✓ Defining Postman items relationship with JSON convention - Using Postman variables - Saving response data into Postman variables
  • 26. Direction des Technologies et du Digital ddd #4th idea: Running the tests from the application 26 Postman- Express - Postman Collection SDK - Newman Node.js Express app - generating Postman collections - running Newman - YAML (specifications) - JS - JSON (tests) Import generated collection into Postman for debugging purpose only newman-reporter-htmlextra - Import from link
  • 27. Direction des Technologies et du Digital Finally: API testing automation integrated with the CI 27 Postman - YAML (specifications) - JS - JSON (tests) - Express - Postman Collection SDK - Newman Run tests from the CI and display the result in Google Chat - Import from link
  • 28. Direction des Technologies et du Digital And now? 28 ● The test project is adopted by the team ● Consistent API endpoints with strong documentation ● Postman collections as integration examples ● Devs immediately know when non regression tests fail ● Tester can focus on designing new scenarios ● We can deliver new features of fixes very quickly Tester Dev (CI integration) Tester Dev (False positive fix)
  • 29. Direction des Technologies et du Digital And now? 29 ● The test project is adopted by the team ● Consistent API endpoints with strong documentation ● Postman collections as integration examples ● Devs immediately know when non regression tests fail ● Tester can focus on designing new scenarios ● We can deliver new features of fixes very quickly Thank you Any questions? Tester Dev (CI integration) Tester Dev (False positive fix)
  • 30. Cbp filiale du Groupe Financière CEP 11, rue Royale 75008 PARIS Tel : + 33 1 80 52 35 00 Cbp Group www.cbp-group.com 11, rue Royale 75008 PARIS Tel : + 33 1 80 52 32 90 30