27. I T ' S
A W E S O M E
Autonomous releasing
No testing monolith
Insight in integrations
But don't forget the humans
Source: Futurama
28. M O R E I N F O
lazytesting.com/contract-
testing
@LazyTesting
Notas del editor
Ask questions
Test Automation
Human aspect
We use pact
Slow feedback
E2E test have knowledge of everything
Dependencies between teams
(if team 1 introduces a bug, others cannot deploy)
Other team needs to provide it’s application => need for 1 or more integrated envs
This is what you want
A lot of implicit expectations
How I feel as tester> slackline
Creating a monolith
Having integration bugs
Next slide> talk about beer
1. Consumer writes a contract
2. Consumer can mock provider based on the contract
3. Consumer can test it’s own app against the mock
But still… not that useful (just mocking)
4. Provider can validate the contract(s) against the actual implementation (and the other way around)
Explain provider/consumer
broker
Consumer dictated contracts
Customer collaboration over contract negotiation
Tools over human interaction
Bad coverage
- forgetting fault paths (404s)
Asume an evil provider team
Consumers expect more then they actually need
Example : all the beers api doesn’t need a breweyname
Autonomous teams, what if 1 team doesn’t wat to?
Integration testing is complex, accept it (your e2e test are complex as well)
Complexity in testing is a smell of complexity in architecture
Pipelines of provider and consumer need to interact
If release provider: check all contracts
If release of consumer: validate contract against provider