Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Testing Battle.net - Before Deploying to Millions of Players

CppNow via YouTube

Overview

Explore a comprehensive conference talk on testing strategies for large-scale distributed systems, focusing on Battle.net, Blizzard's online gaming service. Dive into practical approaches for designing testable components, structuring classes and data for effective testing, and implementing solutions to verify correctness, performance, and scalability without full-scale deployment. Learn about unit testing techniques for legacy code, dependency injection, data set generation, property-based testing, and algorithmic efficiency evaluation. Gain insights into isolating functionality, handling different input sizes, and generating test data structures. Discover how to plan for failure scenarios, implement shrink functions, and utilize tools like Mersenne Twister for random number generation. Understand the importance of confidence in code through various testing methodologies, including American Fuzzy LOOP and system integration testing, all presented from the perspective of a Battle.net developer.

Syllabus

Introduction
About Battlenet
Why unit testing
Testing large legacy classes
ExhibitA
Constructor
Achievement Service
Inimical Testing
Teasing it apart
queuing for games
GameCubeA
GameFactory
GameMaster
Decouple logic
Dependency injection
Confidence in code
Data sets
Efficiency
Time tests
Algorithmic efficiency
Different sized inputs
Back of the envelope calculations
Timing is difficult
Tests are all about gaining confidence
How to get different sized inputs
Generating data structures
Planning for failure
Propertybased testing
Writing tests
Arithmetic types
Mersenne Twister
Call to Generate
Generation
Function Traits Template
Property
Num checks
Recap
Minimal fail case
Shrink function
Shrink for Strings
Simple Check
Generate Anchor Chain
Rhythmic Test
Complexity Test
Complexity Property
Result of the test
Test code
Generation code
More work
Testing pattern
Arbitrary
American Fuzzy LOOP
Selfish Programmer
System Integration
Algorithmic Testing

Taught by

CppNow

Reviews

Start your review of Testing Battle.net - Before Deploying to Millions of Players

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.