OLD | NEW |
| (Empty) |
1 <html> | |
2 <head> | |
3 <title>Heap Profiler: heap snapshots comparison test</title> | |
4 <script type="text/javascript"> | |
5 var aHolder = [], bHolder = [], cHolder = [], dHolder = []; | |
6 | |
7 function A(x) { | |
8 this.x = x; | |
9 } | |
10 | |
11 function B(x) { | |
12 this.x = x; | |
13 } | |
14 | |
15 function C() {} | |
16 | |
17 var i; | |
18 for (i = 0; i < 100; ++i) { | |
19 var b = new B('hello'); | |
20 bHolder.push(b); | |
21 aHolder.push(new A(b)); | |
22 b = null; | |
23 } | |
24 for (i = 0; i < 25; ++i) { | |
25 cHolder.push(new C()); | |
26 } | |
27 | |
28 function D() {} | |
29 | |
30 function changeStuff() { | |
31 if (aHolder.length > 0) { | |
32 aHolder.splice(aHolder.length - 25, 25); | |
33 } | |
34 for (i = 0; i < 25; ++i) { | |
35 bHolder.push(new B('hello')); | |
36 } | |
37 cHolder = []; | |
38 for (i = 0; i < 25; ++i) { | |
39 dHolder.push(new D()); | |
40 } | |
41 } | |
42 </script> | |
43 </head> | |
44 <body> | |
45 This is the test for heap snapshot comparison functionality. | |
46 <br> | |
47 <br> | |
48 To use this test: | |
49 <ul> | |
50 <li>load file in the browser; | |
51 <li>open DevTools (Ctrl+Shift+I on Win/Linux, Command+Option+I on Mac); | |
52 <li>go to 'Profiles' page; | |
53 <li>press 'Take heap snapshot' button | |
54 (eye icon on the left side of the status bar); | |
55 <li>press | |
56 <input type="button" name="changeStuff" value="this button" onclick="cha
ngeStuff()" />; | |
57 <li>press 'Take heap snapshot' button again; | |
58 </ul> | |
59 <br> | |
60 On the left pane under 'Heap snapshots' section, items called | |
61 'Snapshot 1' and 'Snapshot 2' must appear. Select 'Snapshot 2'. | |
62 Ensure that absolute values are shown (not percents). | |
63 <br> | |
64 <br> | |
65 TEST 1. Verify the following: | |
66 <ul> | |
67 <li>the value in '+/- Count' column for 'A' must be '-25'; | |
68 <li>after expanding 'A' item, the value in '+/- Count' column | |
69 for 'Array' child entry must also be '-25'; | |
70 <li>the value in '+/- Count' column for 'B' must be '+25'; | |
71 <li>after expanding 'B' item, the value in '+/- Count' column | |
72 for 'Array' child entry must also be '+25'; the value for 'A' | |
73 child must be '-25'; | |
74 </ul> | |
75 <br> | |
76 TEST 2. Change display to percent view (using the percent button on the | |
77 status bar). Verify the following: | |
78 <ul> | |
79 <li>values in '+/- Count' and '+/- Size' columns for 'C' must be 'deleted'
; | |
80 <li>values in '+/- Count' and '+/- Size' columns for 'D' must be 'new'; | |
81 </ul> | |
82 </body> | |
83 </html> | |
OLD | NEW |