Contenu connexe Similaire à Test Automation in the Microservices Oriented Enterprise by Shawn Wallace (20) Plus de QA or the Highway (20) Test Automation in the Microservices Oriented Enterprise by Shawn Wallace1. Test Automation in the
“Microservices” Oriented
Enterprise
Shawn Wallace
Architect, Centric Consulting
10. I’m Shawn
My dog
My Son
My Daughter
My Family
I live here
I went to Ohio State
Favorite Movie
I a MarineVet
11. I’m Shawn
My dog
My Son
My Daughter
My Family
I live here
I went to Ohio State
Where I work
Favorite Movie
I a MarineVet
30. Service Based Architecture
• No point-to-point integrations
• Loosely coupled, highly scalable systems
• Loosely coupled, TEAMS
• Easier to test
• Easier to change
• Topology agnostic
31. Easy to Integrate New Systems
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
32. Easy to Integrate New Systems
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
New System
35. Other benefits
• Ease of 3rd party integration
• Existing systems can be ‘wrapped’
• Can be deliberate about scaling
• Fault tolerant
• Event messages can be logged and ‘replayed’
• Can test subsystems in isolation
44. …that you might need to develop
• Technical in nature
• Http Verbs (POST, GET, PUT, PATCH, DELETE, OPTIONS)
• Http Headers
• ReST
• API
• More about networking than
you would like
• Oh, and you still need to know
the business
45. Once you have developed
these skills, a whole new
world of testing capability
becomes available to you.
48. • Deliberately test your system at the physical boundaries
• Know what your system does and how it works
• Collaborate! Collaborate! collaborate!
49. • Deliberately test your system at the physical boundaries
• Know what your system does and how it works
• Collaborate! Collaborate! collaborate!
50. • Deliberately test your system at the physical boundaries
• Know what your system does and how it works
• Collaborate! Collaborate! collaborate!
52. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
53. • Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
Terminology
54. • Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
Terminology
55. • Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
Terminology
56. • Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
Terminology
57. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
58. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
59. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders
Fake Consumer
60. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
61. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
Orders Invoicing Inventory
Logging Profiles Reporting
Event Bus
Inventory
Inventory
Inventory
62. Terminology
• Messaging
• Contracts
• Messaging Infrastructure
• Asynchronous
• Loosely Coupled
• “Edge” Testing
• Mocks/Fakes
• Dynamic Scaling
• Data Consistency, Master Data Management
64. Use your web browser
• Can only execute un-authenticated
GET requests
• Can only access web clients
• Hard to set headers
67. Use a web “sniffer”
• Fiddler - more granularity, more technical
http://www.telerik.com/fiddler
68. Use a web “sniffer”
• Fiddler - more granularity, more technical
http://www.telerik.com/fiddler
• Postman - more friendly user interface
https://www.getpostman.com