Главная
Study mode:
on
1
Introduction
2
About Battlenet
3
Why unit testing
4
Testing large legacy classes
5
ExhibitA
6
Constructor
7
Achievement Service
8
Inimical Testing
9
Teasing it apart
10
queuing for games
11
GameCubeA
12
GameFactory
13
GameMaster
14
Decouple logic
15
Dependency injection
16
Confidence in code
17
Data sets
18
Efficiency
19
Time tests
20
Algorithmic efficiency
21
Different sized inputs
22
Back of the envelope calculations
23
Timing is difficult
24
Tests are all about gaining confidence
25
How to get different sized inputs
26
Generating data structures
27
Planning for failure
28
Propertybased testing
29
Writing tests
30
Arithmetic types
31
Mersenne Twister
32
Call to Generate
33
Generation
34
Function Traits Template
35
Property
36
Num checks
37
Recap
38
Minimal fail case
39
Shrink function
40
Shrink for Strings
41
Simple Check
42
Generate Anchor Chain
43
Rhythmic Test
44
Complexity Test
45
Complexity Property
46
Result of the test
47
Test code
48
Generation code
49
More work
50
Testing pattern
51
Arbitrary
52
American Fuzzy LOOP
53
Selfish Programmer
54
System Integration
55
Algorithmic Testing
Description:
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

CppNow
Add to list