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.
Read more
Testing Battle.net - Before Deploying to Millions of Players