OLD | NEW |
---|---|
1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 import os | 4 import os |
5 import unittest | 5 import unittest |
6 | 6 |
7 from telemetry.page import buildbot_page_measurement_results | 7 from telemetry.page import buildbot_page_measurement_results |
8 from telemetry.page import page_set | 8 from telemetry.page import page_set |
9 from telemetry.page import perf_tests_helper | 9 from telemetry.page import perf_tests_helper |
10 | 10 |
(...skipping 25 matching lines...) Expand all Loading... | |
36 measurement_results = SummarySavingPageMeasurementResults() | 36 measurement_results = SummarySavingPageMeasurementResults() |
37 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 37 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
38 measurement_results.Add('a', 'seconds', 3) | 38 measurement_results.Add('a', 'seconds', 3) |
39 measurement_results.DidMeasurePage() | 39 measurement_results.DidMeasurePage() |
40 | 40 |
41 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 41 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
42 measurement_results.Add('a', 'seconds', 7) | 42 measurement_results.Add('a', 'seconds', 7) |
43 measurement_results.DidMeasurePage() | 43 measurement_results.DidMeasurePage() |
44 | 44 |
45 measurement_results.PrintSummary() | 45 measurement_results.PrintSummary() |
46 expected = ['RESULT a_by_url: http___www.foo.com_= 3 seconds', | 46 expected = ['RESULT a_by_name: http___www.foo.com_= 3 seconds', |
tonyg
2013/09/06 04:32:24
Sorry I missed this before, but the dashboard had
| |
47 'RESULT a_by_url: http___www.bar.com_= 7 seconds', | 47 'RESULT a_by_name: http___www.bar.com_= 7 seconds', |
48 '*RESULT a: a= [3,7] seconds\nAvg a: 5.000000seconds\n' + | 48 '*RESULT a: a= [3,7] seconds\nAvg a: 5.000000seconds\n' + |
49 'Sd a: 2.828427seconds'] | 49 'Sd a: 2.828427seconds'] |
50 self.assertEquals(measurement_results.results, expected) | 50 self.assertEquals(measurement_results.results, expected) |
51 | 51 |
52 def test_basic_summary_nonuniform_results(self): | 52 def test_basic_summary_nonuniform_results(self): |
53 test_page_set = _MakePageSet() | 53 test_page_set = _MakePageSet() |
54 | 54 |
55 measurement_results = SummarySavingPageMeasurementResults() | 55 measurement_results = SummarySavingPageMeasurementResults() |
56 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 56 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
57 measurement_results.Add('a', 'seconds', 3) | 57 measurement_results.Add('a', 'seconds', 3) |
58 measurement_results.Add('b', 'seconds', 10) | 58 measurement_results.Add('b', 'seconds', 10) |
59 measurement_results.DidMeasurePage() | 59 measurement_results.DidMeasurePage() |
60 | 60 |
61 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 61 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
62 measurement_results.Add('a', 'seconds', 3) | 62 measurement_results.Add('a', 'seconds', 3) |
63 measurement_results.Add('b', 'seconds', 10) | 63 measurement_results.Add('b', 'seconds', 10) |
64 measurement_results.DidMeasurePage() | 64 measurement_results.DidMeasurePage() |
65 | 65 |
66 measurement_results.WillMeasurePage(test_page_set.pages[2]) | 66 measurement_results.WillMeasurePage(test_page_set.pages[2]) |
67 measurement_results.Add('a', 'seconds', 7) | 67 measurement_results.Add('a', 'seconds', 7) |
68 # Note, page[2] does not report a 'b' metric. | 68 # Note, page[2] does not report a 'b' metric. |
69 measurement_results.DidMeasurePage() | 69 measurement_results.DidMeasurePage() |
70 | 70 |
71 measurement_results.PrintSummary() | 71 measurement_results.PrintSummary() |
72 expected = ['RESULT a_by_url: http___www.foo.com_= 3 seconds', | 72 expected = ['RESULT a_by_name: http___www.foo.com_= 3 seconds', |
73 'RESULT a_by_url: http___www.bar.com_= 3 seconds', | 73 'RESULT a_by_name: http___www.bar.com_= 3 seconds', |
74 'RESULT a_by_url: http___www.baz.com_= 7 seconds', | 74 'RESULT a_by_name: http___www.baz.com_= 7 seconds', |
75 '*RESULT a: a= [3,3,7] seconds\nAvg a: 4.333333seconds\n' + | 75 '*RESULT a: a= [3,3,7] seconds\nAvg a: 4.333333seconds\n' + |
76 'Sd a: 2.309401seconds', | 76 'Sd a: 2.309401seconds', |
77 'RESULT b_by_url: http___www.foo.com_= 10 seconds', | 77 'RESULT b_by_name: http___www.foo.com_= 10 seconds', |
78 'RESULT b_by_url: http___www.bar.com_= 10 seconds', | 78 'RESULT b_by_name: http___www.bar.com_= 10 seconds', |
79 '*RESULT b: b= [10,10] seconds\nAvg b: 10.000000seconds'] | 79 '*RESULT b: b= [10,10] seconds\nAvg b: 10.000000seconds'] |
80 self.assertEquals(measurement_results.results, expected) | 80 self.assertEquals(measurement_results.results, expected) |
81 | 81 |
82 def test_basic_summary_pass_and_fail_page(self): | 82 def test_basic_summary_pass_and_fail_page(self): |
83 """If a page failed, only print summary for individual passing pages.""" | 83 """If a page failed, only print summary for individual passing pages.""" |
84 test_page_set = _MakePageSet() | 84 test_page_set = _MakePageSet() |
85 | 85 |
86 measurement_results = SummarySavingPageMeasurementResults() | 86 measurement_results = SummarySavingPageMeasurementResults() |
87 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 87 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
88 measurement_results.Add('a', 'seconds', 3) | 88 measurement_results.Add('a', 'seconds', 3) |
89 measurement_results.DidMeasurePage() | 89 measurement_results.DidMeasurePage() |
90 measurement_results.AddFailureMessage(test_page_set.pages[0], 'message') | 90 measurement_results.AddFailureMessage(test_page_set.pages[0], 'message') |
91 | 91 |
92 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 92 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
93 measurement_results.Add('a', 'seconds', 7) | 93 measurement_results.Add('a', 'seconds', 7) |
94 measurement_results.DidMeasurePage() | 94 measurement_results.DidMeasurePage() |
95 | 95 |
96 measurement_results.PrintSummary() | 96 measurement_results.PrintSummary() |
97 expected = ['RESULT a_by_url: http___www.bar.com_= 7 seconds'] | 97 expected = ['RESULT a_by_name: http___www.bar.com_= 7 seconds'] |
98 self.assertEquals(measurement_results.results, expected) | 98 self.assertEquals(measurement_results.results, expected) |
99 | 99 |
100 def test_repeated_pageset_one_iteration_one_page_fails(self): | 100 def test_repeated_pageset_one_iteration_one_page_fails(self): |
101 """Page fails on one iteration, no results for that page should print.""" | 101 """Page fails on one iteration, no results for that page should print.""" |
102 test_page_set = _MakePageSet() | 102 test_page_set = _MakePageSet() |
103 | 103 |
104 measurement_results = SummarySavingPageMeasurementResults() | 104 measurement_results = SummarySavingPageMeasurementResults() |
105 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 105 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
106 measurement_results.Add('a', 'seconds', 3) | 106 measurement_results.Add('a', 'seconds', 3) |
107 measurement_results.DidMeasurePage() | 107 measurement_results.DidMeasurePage() |
108 | 108 |
109 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 109 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
110 measurement_results.Add('a', 'seconds', 7) | 110 measurement_results.Add('a', 'seconds', 7) |
111 measurement_results.DidMeasurePage() | 111 measurement_results.DidMeasurePage() |
112 measurement_results.AddFailureMessage(test_page_set.pages[1], 'message') | 112 measurement_results.AddFailureMessage(test_page_set.pages[1], 'message') |
113 | 113 |
114 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 114 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
115 measurement_results.Add('a', 'seconds', 4) | 115 measurement_results.Add('a', 'seconds', 4) |
116 measurement_results.DidMeasurePage() | 116 measurement_results.DidMeasurePage() |
117 | 117 |
118 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 118 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
119 measurement_results.Add('a', 'seconds', 8) | 119 measurement_results.Add('a', 'seconds', 8) |
120 measurement_results.DidMeasurePage() | 120 measurement_results.DidMeasurePage() |
121 | 121 |
122 measurement_results.PrintSummary() | 122 measurement_results.PrintSummary() |
123 expected = ['RESULT a_by_url: http___www.foo.com_= [3,4] seconds\n' + | 123 expected = ['RESULT a_by_name: http___www.foo.com_= [3,4] seconds\n' + |
124 'Avg a_by_url: 3.500000seconds\nSd a_by_url: 0.707107seconds'] | 124 'Avg a_by_name: 3.500000seconds\n' + |
125 'Sd a_by_name: 0.707107seconds'] | |
125 self.assertEquals(measurement_results.results, expected) | 126 self.assertEquals(measurement_results.results, expected) |
126 | 127 |
127 def test_repeated_pageset(self): | 128 def test_repeated_pageset(self): |
128 test_page_set = _MakePageSet() | 129 test_page_set = _MakePageSet() |
129 | 130 |
130 measurement_results = SummarySavingPageMeasurementResults() | 131 measurement_results = SummarySavingPageMeasurementResults() |
131 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 132 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
132 measurement_results.Add('a', 'seconds', 3) | 133 measurement_results.Add('a', 'seconds', 3) |
133 measurement_results.DidMeasurePage() | 134 measurement_results.DidMeasurePage() |
134 | 135 |
135 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 136 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
136 measurement_results.Add('a', 'seconds', 7) | 137 measurement_results.Add('a', 'seconds', 7) |
137 measurement_results.DidMeasurePage() | 138 measurement_results.DidMeasurePage() |
138 | 139 |
139 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 140 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
140 measurement_results.Add('a', 'seconds', 4) | 141 measurement_results.Add('a', 'seconds', 4) |
141 measurement_results.DidMeasurePage() | 142 measurement_results.DidMeasurePage() |
142 | 143 |
143 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 144 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
144 measurement_results.Add('a', 'seconds', 8) | 145 measurement_results.Add('a', 'seconds', 8) |
145 measurement_results.DidMeasurePage() | 146 measurement_results.DidMeasurePage() |
146 | 147 |
147 measurement_results.PrintSummary() | 148 measurement_results.PrintSummary() |
148 expected = ['RESULT a_by_url: http___www.foo.com_= [3,4] seconds\n' + | 149 expected = ['RESULT a_by_name: http___www.foo.com_= [3,4] seconds\n' + |
149 'Avg a_by_url: 3.500000seconds\nSd a_by_url: 0.707107seconds', | 150 'Avg a_by_name: 3.500000seconds\n' + |
150 'RESULT a_by_url: http___www.bar.com_= [7,8] seconds\n' + | 151 'Sd a_by_name: 0.707107seconds', |
151 'Avg a_by_url: 7.500000seconds\nSd a_by_url: 0.707107seconds', | 152 'RESULT a_by_name: http___www.bar.com_= [7,8] seconds\n' + |
153 'Avg a_by_name: 7.500000seconds\n' + | |
154 'Sd a_by_name: 0.707107seconds', | |
152 '*RESULT a: a= [3,7,4,8] seconds\n' + | 155 '*RESULT a: a= [3,7,4,8] seconds\n' + |
153 'Avg a: 5.500000seconds\nSd a: 2.380476seconds' | 156 'Avg a: 5.500000seconds\n' |
157 'Sd a: 2.380476seconds' | |
154 ] | 158 ] |
155 self.assertEquals( | 159 self.assertEquals( |
156 measurement_results.results, | 160 measurement_results.results, |
157 expected) | 161 expected) |
158 | 162 |
159 def test_repeated_pages(self): | 163 def test_repeated_pages(self): |
160 test_page_set = _MakePageSet() | 164 test_page_set = _MakePageSet() |
161 | 165 |
162 measurement_results = SummarySavingPageMeasurementResults() | 166 measurement_results = SummarySavingPageMeasurementResults() |
163 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 167 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
164 measurement_results.Add('a', 'seconds', 3) | 168 measurement_results.Add('a', 'seconds', 3) |
165 measurement_results.DidMeasurePage() | 169 measurement_results.DidMeasurePage() |
166 | 170 |
167 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 171 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
168 measurement_results.Add('a', 'seconds', 4) | 172 measurement_results.Add('a', 'seconds', 4) |
169 measurement_results.DidMeasurePage() | 173 measurement_results.DidMeasurePage() |
170 | 174 |
171 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 175 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
172 measurement_results.Add('a', 'seconds', 7) | 176 measurement_results.Add('a', 'seconds', 7) |
173 measurement_results.DidMeasurePage() | 177 measurement_results.DidMeasurePage() |
174 | 178 |
175 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 179 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
176 measurement_results.Add('a', 'seconds', 8) | 180 measurement_results.Add('a', 'seconds', 8) |
177 measurement_results.DidMeasurePage() | 181 measurement_results.DidMeasurePage() |
178 | 182 |
179 measurement_results.PrintSummary() | 183 measurement_results.PrintSummary() |
180 expected = ['RESULT a_by_url: http___www.foo.com_= [3,4] seconds\n' + | 184 expected = ['RESULT a_by_name: http___www.foo.com_= [3,4] seconds\n' + |
181 'Avg a_by_url: 3.500000seconds\nSd a_by_url: 0.707107seconds', | 185 'Avg a_by_name: 3.500000seconds\n' + |
182 'RESULT a_by_url: http___www.bar.com_= [7,8] seconds\n' + | 186 'Sd a_by_name: 0.707107seconds', |
183 'Avg a_by_url: 7.500000seconds\nSd a_by_url: 0.707107seconds', | 187 'RESULT a_by_name: http___www.bar.com_= [7,8] seconds\n' + |
188 'Avg a_by_name: 7.500000seconds\n' + | |
189 'Sd a_by_name: 0.707107seconds', | |
184 '*RESULT a: a= [3,4,7,8] seconds\n' + | 190 '*RESULT a: a= [3,4,7,8] seconds\n' + |
185 'Avg a: 5.500000seconds\nSd a: 2.380476seconds' | 191 'Avg a: 5.500000seconds\n' + |
192 'Sd a: 2.380476seconds' | |
186 ] | 193 ] |
187 self.assertEquals( | 194 self.assertEquals( |
188 measurement_results.results, | 195 measurement_results.results, |
189 expected) | 196 expected) |
190 | 197 |
191 def test_overall_results(self): | 198 def test_overall_results(self): |
192 test_page_set = _MakePageSet() | 199 test_page_set = _MakePageSet() |
193 | 200 |
194 measurement_results = SummarySavingPageMeasurementResults() | 201 measurement_results = SummarySavingPageMeasurementResults() |
195 | 202 |
196 measurement_results.AddSummary('a', 'seconds', 1) | 203 measurement_results.AddSummary('a', 'seconds', 1) |
197 | 204 |
198 measurement_results.WillMeasurePage(test_page_set.pages[0]) | 205 measurement_results.WillMeasurePage(test_page_set.pages[0]) |
199 measurement_results.Add('b', 'seconds', 2) | 206 measurement_results.Add('b', 'seconds', 2) |
200 measurement_results.DidMeasurePage() | 207 measurement_results.DidMeasurePage() |
201 | 208 |
202 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 209 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
203 measurement_results.Add('b', 'seconds', 3) | 210 measurement_results.Add('b', 'seconds', 3) |
204 measurement_results.DidMeasurePage() | 211 measurement_results.DidMeasurePage() |
205 | 212 |
206 measurement_results.AddSummary('c', 'seconds', 4) | 213 measurement_results.AddSummary('c', 'seconds', 4) |
207 | 214 |
208 measurement_results.PrintSummary() | 215 measurement_results.PrintSummary() |
209 | 216 |
210 self.assertEquals( | 217 self.assertEquals( |
211 measurement_results.results, | 218 measurement_results.results, |
212 ['RESULT b_by_url: http___www.foo.com_= 2 seconds', | 219 ['RESULT b_by_name: http___www.foo.com_= 2 seconds', |
213 'RESULT b_by_url: http___www.bar.com_= 3 seconds', | 220 'RESULT b_by_name: http___www.bar.com_= 3 seconds', |
214 '*RESULT b: b= [2,3] seconds\n' + | 221 '*RESULT b: b= [2,3] seconds\n' + |
215 'Avg b: 2.500000seconds\nSd b: 0.707107seconds', | 222 'Avg b: 2.500000seconds\nSd b: 0.707107seconds', |
216 '*RESULT a: a= 1 seconds', | 223 '*RESULT a: a= 1 seconds', |
217 '*RESULT c: c= 4 seconds']) | 224 '*RESULT c: c= 4 seconds']) |
218 | 225 |
219 def test_overall_results_trace_tag(self): | 226 def test_overall_results_trace_tag(self): |
220 test_page_set = _MakePageSet() | 227 test_page_set = _MakePageSet() |
221 | 228 |
222 measurement_results = SummarySavingPageMeasurementResults(trace_tag='_ref') | 229 measurement_results = SummarySavingPageMeasurementResults(trace_tag='_ref') |
223 | 230 |
(...skipping 30 matching lines...) Expand all Loading... | |
254 | 261 |
255 measurement_results.WillMeasurePage(test_page_set.pages[1]) | 262 measurement_results.WillMeasurePage(test_page_set.pages[1]) |
256 measurement_results.Add('a', '', | 263 measurement_results.Add('a', '', |
257 '{"buckets": [{"low": 2, "high": 3, "count": 1}]}', | 264 '{"buckets": [{"low": 2, "high": 3, "count": 1}]}', |
258 data_type='histogram') | 265 data_type='histogram') |
259 measurement_results.DidMeasurePage() | 266 measurement_results.DidMeasurePage() |
260 | 267 |
261 measurement_results.PrintSummary() | 268 measurement_results.PrintSummary() |
262 | 269 |
263 expected = [ | 270 expected = [ |
264 'HISTOGRAM a_by_url: http___www.foo.com_= ' + | 271 'HISTOGRAM a_by_name: http___www.foo.com_= ' + |
265 '{"buckets": [{"low": 1, "high": 2, "count": 1}]}\n' + | 272 '{"buckets": [{"low": 1, "high": 2, "count": 1}]}\n' + |
266 'Avg a_by_url: 1.500000', | 273 'Avg a_by_name: 1.500000', |
267 'HISTOGRAM a_by_url: http___www.bar.com_= ' + | 274 'HISTOGRAM a_by_name: http___www.bar.com_= ' + |
268 '{"buckets": [{"low": 2, "high": 3, "count": 1}]}\n' + | 275 '{"buckets": [{"low": 2, "high": 3, "count": 1}]}\n' + |
269 'Avg a_by_url: 2.500000'] | 276 'Avg a_by_name: 2.500000'] |
270 self.assertEquals(measurement_results.results, expected) | 277 self.assertEquals(measurement_results.results, expected) |
OLD | NEW |