Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Contract Tests in the Enterprise

Devoxx via YouTube

Overview

Explore effective contract testing strategies for enterprise applications in this conference talk. Learn how to address common challenges like unreliable shared testing environments and API inconsistencies. Discover techniques for migrating legacy applications to work with stubs of external services, improving test reliability through API contract tests, and understanding the differences between producer and consumer-driven contracts. Dive into various testing approaches, including unit, integration, and end-to-end tests, as well as strategies for generating and using stubs. Gain insights into service evolution patterns, benefits of consumer-driven contracts, and best practices for implementing contract tests in both producer and consumer scenarios. Explore solutions for monolithic architectures, API creation, and handling messaging and polyglot environments. By the end, acquire valuable knowledge to enhance your testing processes and improve overall software quality in enterprise settings.

Syllabus

Intro
About me
Just another day at work
How the code is currently organized
How the code is currently deployed
We're agile & we care about quality
Application Architecture
How the code is currently tested
Unit tests FTW!
Integration tests FTW!
End to end tests FTW!
Testing Strategy - Hard Coded Object Stubs
Problems with hard coding stubs
Generating Stubs From Proxy
Testing Strategy - Generated Remote Stub
Hard Problems
Service Evolution Patterns
Definitions
Provider Contract
Consumer Contract
Benefits of Consumer Driven Contracts
How the code should be tested
Consumers create stubs (current approach)
Example of a contract
Generating Stubs & Tests (PRODUCER)
Contract Tests (PRODUCER)
Generated Stubs (PRODUCER)
Monolith as source of truth (better approach)
Reuse Stubs (CONSUMER)
Nice API creation
Store the stubs from contracts locally
Play with the API offline
Producer sets up a project
Producer makes the generated tests pass
CI server builds the producer code
Consumer uses uploaded stubs
Messaging
Doesn't work
Polyglot
What have we managed to build?

Taught by

Devoxx

Reviews

Start your review of Contract Tests in the Enterprise

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.