~/talk

You Can't Test This? Hammertime!

Talkat ACCU 2021 Online · 2021-03-10..03-13· [testing]
links:none on file
slides:none on file

Lists common excuses for untestable code, then gives practical fixes: stub the RNG or pass a provider for randomness and fake clocks for datetime to avoid 24‑hour runs, use dependency injection and local DB copies or emulators instead of prod, and run CI so “works on my machine” stops. Recommends Chaos Monkey style failure tests, property‑based and mutation testing (mentions Pex/Moles‑style tools), approval tests and fuzzers; cites real pain: 72‑hour suites and flaky tests, and shows how smaller units expose bugs quickly.

AI-written summary · about

  1. 0:00Start
  2. 5:58You can't test this • You don't know what it's supposed to do yet • It writes to the screen • Formal proofs? Do you need to be *certain of everything?
  3. 12:52Why do we test? Confidence for you? Your customers? What do you mean by confidence? No regressions eg seagull merge With business people, your team. Concert examples are easier to point at/reason about
  4. 20:26How do we test? • End to end "Integration"
  5. 42:04The numbers are wrong ProTip: Send in zeros and check for discontinuities
  6. 43:30A True Story "I'm not an engineer but I don't understand how you can test something you haven't built yet."
  7. 53:23Mocks, stubs and stunt doubles Fake it til they make it Does the coverage hit the code or just the mocks Maybe try some mutation testing
  8. 56:21How do you test machine learning? Jupyter/Data bricks etc note books • The structure is hard to test • One long function • Randomness inside • Results are a often a graph
~/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.