~/talk

Continuous Integration Testing

Talkat devopsdays Portland 2019 · 2019-09-10..09-12· [devops-and-delivery, testing]
slides:none on file

Describes concrete CI patterns for high‑fidelity integration tests: build containers, provision an SUT, run curl/grep checks, then tear down. Compares four provisioning methods with tradeoffs — docker compose (fast, low fidelity), namespace-per-test on shared Kubernetes (good balance, recommended), self-destructing VM running single‑node k8s (perfect isolation, cheap but slower), and full cluster per test (best fidelity, slowest and costliest). Emphasizes speed, ephemerality, parallelism, and handling stateful DBs or sanitized prod data.

AI-written summary · about

  1. 0:00Intro
  2. 1:21Continuous All The Things! Good for business. Good for process. Good for people.
  3. 1:37Before Continuous Integration (BCI)
  4. 2:38Continuous Integration (CI)
  5. 3:18Software Testing
  6. 4:59Idealized Test Pyramid
  7. 5:50Actual Test Pyramid
  8. 6:34Integration tests are hard. Production runtimes != developer machines Cost
  9. 6:57Microservices make it harder.
  10. 11:47Integration Testing limits risk We can still do it - even on microservice applications. It's hard, but (potentially) worth it. Make informed risk analyses.
  11. 12:18Provisioning Creating a System Under Test (SUT)
  12. 15:21An example Kubernetes ("K85") microservice application
  13. 16:23Integration test flow
  14. 16:58Docker Compose
  15. 17:55K8s Staging Cluster
  16. 18:58Self-Destructing VM?
  17. 20:11Technique 3: Self-destructing VM!
  18. 20:50K8s cluster per test
  19. 21:14Integration testing techniques
  20. 24:01But Dave, what about... Lots of services? Stateful storage? PII?
  21. 24:54Yes, we can (still) do integration testing
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.