~/talk

“Testing Battle.net (before deploying to millions of players)"

Talkat CppCon 2015 · 2015-09-21..09-25· [distributed-systems, testing]
slides:none on file

Battle.net servers are C++ and matchmaking must scale to millions, so code separates heavy logic into a base class and shunts RPC/config interactions into a derived implementation (logic-in-base, interactions-in-impl), uses dependency injection and small constructors, and adds timed complexity checks (default N=100, multiplier 32) to detect algorithmic growth. A QuickCheck-like property-based generate/shrink framework auto‑generates inputs, shrinks failures (including tuples/pairs), runs locally during development (not CI by default), and the example code is on GitHub under MIT.

AI-written summary · about

  1. 0:00Introduction to testing Battle.net
  2. 1:48Legacy code testing challenges
  3. 8:10Separating logic for testability
  4. 15:36Testing algorithmic efficiency
  5. 23:30Property-based testing with Arbitrary
  6. 32:20Demo of Arbitrary in action
  7. 41:10Testing patterns and future work
  8. 50:09Q&A session
~/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.