SlideShare ist ein Scribd-Unternehmen logo
1 von 35
1
INTEGRATION TESTING FOR
MICROSERVICES WITH SPRING BOOT
Oleksandr Romanov
2 – 3 March 2018
Kyiv, Ukraine
2
WHAT I WILL COVER?
1) Microservices architecture and it’s testing complexities
2) Anatomy of microservice
3) Effective integration testing with Spring Boot
4) Component tests with spring-boot-test-containers
5) Conclusions
3
WHO AM I
6+ years as Test Automation Engineer
Worked with Java / C# web applications
/ backend systems from CMS to enterprise
Working now as QA Automation Lead
at Playtika
4
GOOD OLD TESTING PYRAMID
UI
SERVICE
UNIT
5
MICROSERVICES ARCHITECTURE
Microservice
Microservice
Microservice
UI
WEB
MOBILE
6
ANATOMY OF MICROSERVICE
Microservice
External
services
Persistence Domain logic
7
MICROSERVICES TEST AUTOMATION APPROACH
End – to – End (UI / API) tests
Contract
tests
Component
tests
Integration
tests
Unit tests
Component
tests
Integration
tests
Unit tests
8
WHAT IS SPRING BOOT?
https://projects.spring.io/spring-boot/
9
MACHINE MICROSERVICE
- API: GET /machine?userId={id}
{
"service": {
"code": 0
},
"data": {
"machineId": 1,
"machineAvailable": true
}
}
10
UNIT TESTS
• Verify state or behavior of unit of code within
one single microservice
• Use stubbing / mocking
Component
tests
Integration
tests
Unit tests
11
INTEGRATION TESTS
Verify service integration logic with various
external sources
- persistence: MariaDB, Couchbase,
Aerospike, Neo4j, etc)
- gateway: HTTP REST API,
Message Queues, RPC, etc.
Component
tests
Integration
tests
Unit tests
12
INTEGRATION TESTS
Spring Boot “arsenal”:
o @DataJpaTest
o @DataMongoTest
o @JdbcTest
o @DataRedisTest
o @DataNeo4jTest
Microservice
Persistence
13
ADDING CONTAINER DEPENDENCIES
https://github.com/Playtika/testcontainers-spring-boot
<dependency>
<groupId>com.playtika.testcontainers</groupId>
<artifactId>embedded-mariadb</artifactId>
<version>1.5</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.playtika.testcontainers</groupId>
<artifactId>embedded-couchbase</artifactId>
<version>1.5</version>
<scope>test</scope>
</dependency>
14
CHECK OUT APPLICATION PROPERTIES
spring.datasource.url=jdbc:mariadb://${embedded.mariadb.host}
:${embedded.mariadb.port}/${embedded.mariadb.schema}
spring.datasource.username=${embedded.mariadb.user}
spring.datasource.password=${embedded.mariadb.password}
15
EXAMPLE REPOSITORY
interface MachineSettingRepository extends
Repository<MachineSettingEntity, Long> {
Stream<MachineSettingEntity> findAll();
}
16
WRITING SIMPLE SQL DB TEST
@Autowired
private TestEntityManager testEntityManager;
@Autowired
private MachineSettingRepository machineSettingRepository;
17
WRITING SIMPLE TEST FOR SQL DB
@Test
public void shouldFindSingleMachineSetting() throws Exception {
MachineSettingEntity settingEntity = new MachineSettingEntity(1,
“Test”);
testEntityManager.persistAndFlush(settingEntity);
assertThat(machineSettingRepository.findAll().filter(e ->
e.getMachineId() == settingEntity.getMachineId())
.collect(Collectors.toList()).get(0)).isEqualTo(settingEntity)
.withFailMessage("Unable to find machine setting with id " +
settingEntity.getMachineId());
}
18
RUNNING SQL DB TEST
@RunWith(SpringRunner.class)
@ActiveProfiles("test")
@DataJpaTest
@AutoConfigureTestDatabase(replace =
AutoConfigureTestDatabase.Replace.NONE)
@TestPropertySource(properties =
{"embedded.couchbase.enabled=false"}
public class MachineSettingDatabaseIntegrationTest
19
WRITING SIMPLE TEST FOR NOSQL DB
@Autowired
private MachineStateDocumentRepository machineStateDocumentRepository;
@Test
public void shouldFindStateInDb() {
MachineStateDocument testState = MachineStateDocument.builder()
.key("4-4")
.build();
machineStateDocumentRepository.save(testState);
assertThat(machineStateDocumentRepository.findOne("4-4").get())
.isEqualTo(testState)
.withFailMessage("Unable to find state by key: " + testState.getKey());
}
20
RUNNING NOSQL DB TEST
@RunWith(SpringRunner.class)
@ActiveProfiles("test")
@SpringBootTest(classes = {MachineStateTestConfiguration.class})
public class MachineStateDatabaseIntegrationTest
21
ADDITIONAL CONFIGURATIONS
@EnableAutoConfiguration(exclude = {
DataSourceAutoConfiguration.class,
HibernateJpaAutoConfiguration.class,
DataSourceTransactionManagerAutoConfiguration.class,
LiquibaseAutoConfiguration.class,
XADataSourceAutoConfiguration.class})
@TestConfiguration
@Profile("test")
@Import({CouchbaseConfiguration.class})
public class MachineStateTestConfiguration
22
INTEGRATION TESTS
Spring Boot “arsenal”:
o @WebMvcTest
Microservice
External
services
23
EXAMPLE CONTROLLER
@RestController
@RequestMapping("/machine")
public class MachineStateController {
private final MachineStateService machineStateService;
@GetMapping(produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public RestResponse<MachineState> getMachineState(@RequestParam
long userId) {
MachineState machineState = machineStateService
.getMachineState(userId);
return RestResponse.ok(machineState);
}
}
24
TESTING CONTROLLER LEVEL
private long TEST_USER_ID = 1;
@Autowired
private MockMvc mvc;
@MockBean
private MachineStateService machineStateService;
25
TESTING CONTROLLER LEVEL
@Test
public void shouldReturnMachineStateWhenGetRequestingJson() throws Exception
{
given(machineStateService.getMachineState(TEST_USER_ID))
.willReturn(new MachineState(100500, false));
mvc.perform(get("/machine?userId=1"))
.andExpect(content().contentType(MediaType.APPLICATION_JSON_UTF8))
.andExpect(status().isOk())
.andExpect(jsonPath("$.data.machineId").value("100500"))
.andExpect(jsonPath("$.data.machineAvailable").value(“false"));
}
26
RUNNING TEST FOR CONTROLLER
@RunWith(SpringRunner.class)
@WebMvcTest(MachineStateController.class)
@ActiveProfiles("test")
@TestPropertySource(properties
={"embedded.couchbase.enabled=false",
"embedded.mariadb.enabled=false"})
public class MachineStateControllerIntegrationTest
27
COMPONENT TESTS
Component
tests
Integration
tests
Unit tests
External service
28
ADDING WIREMOCK DEPENDENCY
https://github.com/tomakehurst/wiremock
<dependency>
<groupId>com.github.tomakehurst</groupId>
<artifactId>wiremock</artifactId>
<version>1.18</version>
<scope>test</scope>
</dependency>
29
MOCKING EXTERNAL DEPENDENCIES
{
"request":
{
"urlPattern": "/external-api/user/1/finished",
"method": "GET"
},
"response":
{
"status": 200,
"headers":
{
"Content-Type" : "application/json"
},
"body": "{"service":{"code": 0},
"data":{"finished":"true"}}"
}
}
30
SETTING UP COMPONENT TEST
public abstract class MachineBaseComponentTest {
@ClassRule
public static final WireMockClassRule externalApi = new
WireMockClassRule(7070);
@Autowired
protected WebApplicationContext context;
protected MockMvc mvc;
@Before
public void setUp() {
mvc = MockMvcBuilders.webAppContextSetup(context).build();
}
}
31
COMPONENT TEST
@Test
public void shouldReturnMachineStateWhenStateIsInRepository() throws
Exception {
mvc.perform(get("/machine?userId=1"))
.andExpect(status().is(200))
.andExpect(jsonPath("$.data.machineId").value("1"))
.andExpect(jsonPath("$.data.machineAvailable").value("true"));
}
32
RUNNING COMPONENT TESTS
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {MachineApplication.class,
MachineStateComponentTests.MachineTestConfiguration.class})
@ActiveProfiles("test")
public abstract class MachineBaseComponentTest {}
33
CONCLUSIONS
Microservices needs an
additional levels of testing
Component
tests
Integration
tests
Unit tests
34
CONCLUSIONS
Integration testing with containers provides:
• Better reliability
• More configurability
• Speed of test execution
35© 2017 Playtika Ltd. All Rights Reserved
THANK YOU!
Oleksandr Romanov
twitter: @al8xr
mail: al8x.romanov@gmail.com

Weitere ähnliche Inhalte

Was ist angesagt?

automation testing benefits
automation testing benefitsautomation testing benefits
automation testing benefits
nazeer pasha
 

Was ist angesagt? (20)

(애자일) 테스트 계획서 샘플
(애자일) 테스트 계획서 샘플(애자일) 테스트 계획서 샘플
(애자일) 테스트 계획서 샘플
 
Test Automation Framework Designs
Test Automation Framework DesignsTest Automation Framework Designs
Test Automation Framework Designs
 
Test Driven Development (TDD)
Test Driven Development (TDD)Test Driven Development (TDD)
Test Driven Development (TDD)
 
Rest assured
Rest assuredRest assured
Rest assured
 
2015-StarWest presentation on REST-assured
2015-StarWest presentation on REST-assured2015-StarWest presentation on REST-assured
2015-StarWest presentation on REST-assured
 
Rest API Testing
Rest API TestingRest API Testing
Rest API Testing
 
An Introduction To Automated API Testing
An Introduction To Automated API TestingAn Introduction To Automated API Testing
An Introduction To Automated API Testing
 
Criando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssuredCriando uma arquitetura para seus testes de API com RestAssured
Criando uma arquitetura para seus testes de API com RestAssured
 
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
사용자 스토리 대상 테스트 설계 사례(테스트기본교육 3장 3절)
 
Automação e virtualização de serviços
Automação e virtualização de serviçosAutomação e virtualização de serviços
Automação e virtualização de serviços
 
An introduction to api testing | David Tzemach
An introduction to api testing | David TzemachAn introduction to api testing | David Tzemach
An introduction to api testing | David Tzemach
 
REST API Design & Development
REST API Design & DevelopmentREST API Design & Development
REST API Design & Development
 
Karate, the black belt of HTTP API testing?
Karate, the black belt of HTTP API testing?Karate, the black belt of HTTP API testing?
Karate, the black belt of HTTP API testing?
 
API Test Automation
API Test Automation API Test Automation
API Test Automation
 
automation testing benefits
automation testing benefitsautomation testing benefits
automation testing benefits
 
Soap ui
Soap uiSoap ui
Soap ui
 
SOAP-UI The Web service Testing
SOAP-UI The Web service TestingSOAP-UI The Web service Testing
SOAP-UI The Web service Testing
 
GUI Testing
GUI TestingGUI Testing
GUI Testing
 
Automate REST API Testing
Automate REST API TestingAutomate REST API Testing
Automate REST API Testing
 
So you think you can write a test case
So you think you can write a test caseSo you think you can write a test case
So you think you can write a test case
 

Ähnlich wie Integration testing for microservices with Spring Boot

Pragmatic Java Test Automation
Pragmatic Java Test AutomationPragmatic Java Test Automation
Pragmatic Java Test Automation
Dmitry Buzdin
 
Top100summit 谷歌-scott-improve your automated web application testing
Top100summit  谷歌-scott-improve your automated web application testingTop100summit  谷歌-scott-improve your automated web application testing
Top100summit 谷歌-scott-improve your automated web application testing
drewz lin
 
Use Eclipse technologies to build a modern embedded IDE
Use Eclipse technologies to build a modern embedded IDEUse Eclipse technologies to build a modern embedded IDE
Use Eclipse technologies to build a modern embedded IDE
Benjamin Cabé
 

Ähnlich wie Integration testing for microservices with Spring Boot (20)

Take Control of your Integration Testing with TestContainers
Take Control of your Integration Testing with TestContainersTake Control of your Integration Testing with TestContainers
Take Control of your Integration Testing with TestContainers
 
Designing REST API automation tests in Kotlin
Designing REST API automation tests in KotlinDesigning REST API automation tests in Kotlin
Designing REST API automation tests in Kotlin
 
Testing for fun in production Into The Box 2018
Testing for fun in production Into The Box 2018Testing for fun in production Into The Box 2018
Testing for fun in production Into The Box 2018
 
ForwardJS 2017 - Fullstack end-to-end Test Automation with node.js
ForwardJS 2017 -  Fullstack end-to-end Test Automation with node.jsForwardJS 2017 -  Fullstack end-to-end Test Automation with node.js
ForwardJS 2017 - Fullstack end-to-end Test Automation with node.js
 
Testing your application on Google App Engine
Testing your application on Google App EngineTesting your application on Google App Engine
Testing your application on Google App Engine
 
Testing Your Application On Google App Engine
Testing Your Application On Google App EngineTesting Your Application On Google App Engine
Testing Your Application On Google App Engine
 
Surviving UI Automation Armageddon with BELLATRIX.pptx
Surviving UI Automation Armageddon with BELLATRIX.pptxSurviving UI Automation Armageddon with BELLATRIX.pptx
Surviving UI Automation Armageddon with BELLATRIX.pptx
 
Deep Dive Modern Apps Lifecycle with Visual Studio 2012: How to create cross ...
Deep Dive Modern Apps Lifecycle with Visual Studio 2012: How to create cross ...Deep Dive Modern Apps Lifecycle with Visual Studio 2012: How to create cross ...
Deep Dive Modern Apps Lifecycle with Visual Studio 2012: How to create cross ...
 
Pragmatic Java Test Automation
Pragmatic Java Test AutomationPragmatic Java Test Automation
Pragmatic Java Test Automation
 
Night Watch with QA
Night Watch with QANight Watch with QA
Night Watch with QA
 
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
 
Top100summit 谷歌-scott-improve your automated web application testing
Top100summit  谷歌-scott-improve your automated web application testingTop100summit  谷歌-scott-improve your automated web application testing
Top100summit 谷歌-scott-improve your automated web application testing
 
Breaking free from static abuse in test automation frameworks and using Sprin...
Breaking free from static abuse in test automation frameworks and using Sprin...Breaking free from static abuse in test automation frameworks and using Sprin...
Breaking free from static abuse in test automation frameworks and using Sprin...
 
Integration Testing With ScalaTest and MongoDB
Integration Testing With ScalaTest and MongoDBIntegration Testing With ScalaTest and MongoDB
Integration Testing With ScalaTest and MongoDB
 
Revolution or Evolution in Page Object
Revolution or Evolution in Page ObjectRevolution or Evolution in Page Object
Revolution or Evolution in Page Object
 
using Mithril.js + postgREST to build and consume API's
using Mithril.js + postgREST to build and consume API'susing Mithril.js + postgREST to build and consume API's
using Mithril.js + postgREST to build and consume API's
 
Test Automation for NoSQL Databases
Test Automation for NoSQL DatabasesTest Automation for NoSQL Databases
Test Automation for NoSQL Databases
 
Use Eclipse technologies to build a modern embedded IDE
Use Eclipse technologies to build a modern embedded IDEUse Eclipse technologies to build a modern embedded IDE
Use Eclipse technologies to build a modern embedded IDE
 
Android Unit Test
Android Unit TestAndroid Unit Test
Android Unit Test
 
ITGM8. Всеволод Брекелов (Grid Dinamics) Component tests. let's do that!
ITGM8. Всеволод Брекелов (Grid Dinamics) Component tests. let's do that!ITGM8. Всеволод Брекелов (Grid Dinamics) Component tests. let's do that!
ITGM8. Всеволод Брекелов (Grid Dinamics) Component tests. let's do that!
 

Mehr von Oleksandr Romanov

Mehr von Oleksandr Romanov (10)

Тестування Blockchain - Що там можна тестувати?
Тестування  Blockchain - Що там можна тестувати?Тестування  Blockchain - Що там можна тестувати?
Тестування Blockchain - Що там можна тестувати?
 
What does it mean to test a blockchain
What does it mean to test a blockchainWhat does it mean to test a blockchain
What does it mean to test a blockchain
 
Ups and downs of contract testing in real life
Ups and downs of contract testing in real lifeUps and downs of contract testing in real life
Ups and downs of contract testing in real life
 
Testing challenges at microservices world
Testing challenges at microservices worldTesting challenges at microservices world
Testing challenges at microservices world
 
Practical contract testing with Spring Cloud Contract [Test Con 2019]
Practical contract testing with Spring Cloud Contract [Test Con 2019]Practical contract testing with Spring Cloud Contract [Test Con 2019]
Practical contract testing with Spring Cloud Contract [Test Con 2019]
 
Turning automation education upside down [QAFest 2019]
Turning automation education upside down [QAFest 2019]Turning automation education upside down [QAFest 2019]
Turning automation education upside down [QAFest 2019]
 
Hidden complexities in microservices testing
Hidden complexities in microservices testingHidden complexities in microservices testing
Hidden complexities in microservices testing
 
Automating microservices: what, where and when
Automating microservices: what, where and whenAutomating microservices: what, where and when
Automating microservices: what, where and when
 
Introduction to web application security testing
Introduction to web application security testingIntroduction to web application security testing
Introduction to web application security testing
 
Introduction to pairwise testing
Introduction to pairwise testing Introduction to pairwise testing
Introduction to pairwise testing
 

Kürzlich hochgeladen

VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoorTop Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
dharasingh5698
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 

Kürzlich hochgeladen (20)

VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoorTop Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
Top Rated Call Girls In chittoor 📱 {7001035870} VIP Escorts chittoor
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
 
2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects2016EF22_0 solar project report rooftop projects
2016EF22_0 solar project report rooftop projects
 
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
 
Unit 2- Effective stress & Permeability.pdf
Unit 2- Effective stress & Permeability.pdfUnit 2- Effective stress & Permeability.pdf
Unit 2- Effective stress & Permeability.pdf
 
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Palanpur 7001035870 Whatsapp Number, 24/07 Booking
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
(INDIRA) Call Girl Bhosari Call Now 8617697112 Bhosari Escorts 24x7
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
22-prompt engineering noted slide shown.pdf
22-prompt engineering noted slide shown.pdf22-prompt engineering noted slide shown.pdf
22-prompt engineering noted slide shown.pdf
 
Minimum and Maximum Modes of microprocessor 8086
Minimum and Maximum Modes of microprocessor 8086Minimum and Maximum Modes of microprocessor 8086
Minimum and Maximum Modes of microprocessor 8086
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 

Integration testing for microservices with Spring Boot