OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 1 # Copyright 2014 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 | 4 |
5 from measurements import media | 5 from measurements import media |
6 import page_sets | 6 import page_sets |
7 from telemetry import benchmark | 7 from telemetry import benchmark |
8 from telemetry.page import page_test | 8 from telemetry.page import page_test |
| 9 from telemetry.value import improvement_direction |
9 from telemetry.value import list_of_scalar_values | 10 from telemetry.value import list_of_scalar_values |
10 from telemetry.value import scalar | 11 from telemetry.value import scalar |
11 | 12 |
12 | 13 |
13 class _MSEMeasurement(page_test.PageTest): | 14 class _MSEMeasurement(page_test.PageTest): |
14 def __init__(self): | 15 def __init__(self): |
15 super(_MSEMeasurement, self).__init__( | 16 super(_MSEMeasurement, self).__init__( |
16 action_name_to_run='RunPageInteractions') | 17 action_name_to_run='RunPageInteractions') |
17 | 18 |
18 def ValidateAndMeasurePage(self, page, tab, results): | 19 def ValidateAndMeasurePage(self, page, tab, results): |
19 media_metric = tab.EvaluateJavaScript('window.__testMetrics') | 20 media_metric = tab.EvaluateJavaScript('window.__testMetrics') |
20 trace = media_metric['id'] if 'id' in media_metric else None | 21 trace = media_metric['id'] if 'id' in media_metric else None |
21 metrics = media_metric['metrics'] if 'metrics' in media_metric else [] | 22 metrics = media_metric['metrics'] if 'metrics' in media_metric else [] |
22 for m in metrics: | 23 for m in metrics: |
23 trace_name = '%s.%s' % (m, trace) | 24 trace_name = '%s.%s' % (m, trace) |
24 if isinstance(metrics[m], list): | 25 if isinstance(metrics[m], list): |
25 results.AddValue(list_of_scalar_values.ListOfScalarValues( | 26 results.AddValue(list_of_scalar_values.ListOfScalarValues( |
26 results.current_page, trace_name, units='ms', | 27 results.current_page, trace_name, units='ms', |
27 values=[float(v) for v in metrics[m]], | 28 values=[float(v) for v in metrics[m]], |
28 important=True)) | 29 important=True, |
| 30 improvement_direction=improvement_direction.DOWN)) |
29 | 31 |
30 else: | 32 else: |
31 results.AddValue(scalar.ScalarValue( | 33 results.AddValue(scalar.ScalarValue( |
32 results.current_page, trace_name, units='ms', | 34 results.current_page, trace_name, units='ms', |
33 value=float(metrics[m]), important=True)) | 35 value=float(metrics[m]), important=True, |
| 36 improvement_direction=improvement_direction.DOWN)) |
34 | 37 |
35 | 38 |
36 @benchmark.Disabled('android') | 39 @benchmark.Disabled('android') |
37 class Media(benchmark.Benchmark): | 40 class Media(benchmark.Benchmark): |
38 """Obtains media metrics for key user scenarios.""" | 41 """Obtains media metrics for key user scenarios.""" |
39 test = media.Media | 42 test = media.Media |
40 page_set = page_sets.ToughVideoCasesPageSet | 43 page_set = page_sets.ToughVideoCasesPageSet |
41 | 44 |
42 | 45 |
43 @benchmark.Disabled | 46 @benchmark.Disabled |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 class MediaSourceExtensions(benchmark.Benchmark): | 93 class MediaSourceExtensions(benchmark.Benchmark): |
91 """Obtains media metrics for key media source extensions functions.""" | 94 """Obtains media metrics for key media source extensions functions.""" |
92 test = _MSEMeasurement | 95 test = _MSEMeasurement |
93 page_set = page_sets.MseCasesPageSet | 96 page_set = page_sets.MseCasesPageSet |
94 | 97 |
95 def CustomizeBrowserOptions(self, options): | 98 def CustomizeBrowserOptions(self, options): |
96 # Needed to allow XHR requests to return stream objects. | 99 # Needed to allow XHR requests to return stream objects. |
97 options.AppendExtraBrowserArgs( | 100 options.AppendExtraBrowserArgs( |
98 ['--enable-experimental-web-platform-features', | 101 ['--enable-experimental-web-platform-features', |
99 '--disable-gesture-requirement-for-media-playback']) | 102 '--disable-gesture-requirement-for-media-playback']) |
OLD | NEW |