Testable Services

For purpose of this guide, a service is testable if:

  1. It is a clear producer service:
    1. It solves one problem (or a single tightly-related set of problems),
    2. It exposes an API that allows programs to request solutions / work,
    3. That API allows the client to provide enough context to guide solution of the problem (as much as the producer wishes to allow), and
    4. The service follows good general service hygeine (API versioning with compatability, offering service test instances, consistent availability, independent scaling)
  2. And it contributes to a testable ecosystem:
    1. d