~/talk

Why Integration Tests Might be Better than Unit Tests

Talkat GopherCon Europe 2023 · 2023-06-26..06-29· [testing, go]
slides:none on file

Argues that for FerretDB (a MongoDB-compatible server in Go with a PostgreSQL backend) integration tests catch real incompatibilities that unit tests missed, for example an empty-array filtering edge case that broke compatibility. Uses the official MongoDB Go driver to compare results against MongoDB, prepares dozens of real collections with varied data, runs the MongoDB test suites plus custom queries, and keeps a few focused unit tests. CI initially takes ~30 minutes so the suite is sharded CI to run tests in parallel, yielding faster feedback and clearer prioritization of missing features and documented incompatibilities.

AI-written summary · about

  1. 0:00Intro
  2. 0:28What do you like about testing
  3. 5:19The data
  4. 8:08Filtering
  5. 13:52Unit tests are harmful
  6. 14:13What GPT thinks
  7. 14:59Why unit tests may not be enough
  8. 16:28Functionality
  9. 18:14Compatibility
  10. 19:18Unit Tests
  11. 20:43Running Integration Tests on CI
~/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.