| OLD | NEW |
| 1 # Copyright 2016 The Chromium Authors. All rights reserved. | 1 # Copyright 2016 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 import re | 5 import re |
| 6 | 6 |
| 7 from core import perf_benchmark | 7 from core import perf_benchmark |
| 8 from telemetry import benchmark | 8 from telemetry import benchmark |
| 9 from telemetry.timeline import chrome_trace_category_filter | 9 from telemetry.timeline import chrome_trace_category_filter |
| 10 from telemetry.web_perf import timeline_based_measurement | 10 from telemetry.web_perf import timeline_based_measurement |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 108 """Mobile Chrome Memory System Health Benchmark.""" | 108 """Mobile Chrome Memory System Health Benchmark.""" |
| 109 PLATFORM = 'mobile' | 109 PLATFORM = 'mobile' |
| 110 | 110 |
| 111 @classmethod | 111 @classmethod |
| 112 def ShouldDisable(cls, possible_browser): | 112 def ShouldDisable(cls, possible_browser): |
| 113 # http://crbug.com/612144 | 113 # http://crbug.com/612144 |
| 114 if (possible_browser.browser_type == 'reference' and | 114 if (possible_browser.browser_type == 'reference' and |
| 115 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X'): | 115 possible_browser.platform.GetDeviceTypeName() == 'Nexus 5X'): |
| 116 return True | 116 return True |
| 117 | 117 |
| 118 # http://crbug.com/629163 | |
| 119 if possible_browser.platform.GetDeviceTypeName() == 'Nexus 9': | |
| 120 return True | |
| 121 | |
| 122 return possible_browser.platform.GetDeviceTypeName() == 'Desktop' | 118 return possible_browser.platform.GetDeviceTypeName() == 'Desktop' |
| 123 | 119 |
| 124 | 120 |
| 125 @benchmark.Enabled('android-webview') | 121 @benchmark.Enabled('android-webview') |
| 126 class WebviewStartupSystemHealthBenchmark(perf_benchmark.PerfBenchmark): | 122 class WebviewStartupSystemHealthBenchmark(perf_benchmark.PerfBenchmark): |
| 127 """Webview startup time benchmark | 123 """Webview startup time benchmark |
| 128 | 124 |
| 129 Benchmark that measures how long WebView takes to start up | 125 Benchmark that measures how long WebView takes to start up |
| 130 and load a blank page. Since thie metric only requires the trace | 126 and load a blank page. Since thie metric only requires the trace |
| 131 markers recorded in atrace, Chrome tracing is not enabled for this | 127 markers recorded in atrace, Chrome tracing is not enabled for this |
| 132 benchmark. | 128 benchmark. |
| 133 """ | 129 """ |
| 134 page_set = page_sets.BlankPageSet | 130 page_set = page_sets.BlankPageSet |
| 135 | 131 |
| 136 def CreateTimelineBasedMeasurementOptions(self): | 132 def CreateTimelineBasedMeasurementOptions(self): |
| 137 options = timeline_based_measurement.Options() | 133 options = timeline_based_measurement.Options() |
| 138 options.SetTimelineBasedMetrics(['webviewStartupMetric']) | 134 options.SetTimelineBasedMetrics(['webviewStartupMetric']) |
| 139 options.config.enable_atrace_trace = True | 135 options.config.enable_atrace_trace = True |
| 140 options.config.enable_chrome_trace = False | 136 options.config.enable_chrome_trace = False |
| 141 options.config.atrace_config.app_name = 'org.chromium.webview_shell' | 137 options.config.atrace_config.app_name = 'org.chromium.webview_shell' |
| 142 return options | 138 return options |
| 143 | 139 |
| 144 @classmethod | 140 @classmethod |
| 145 def ShouldTearDownStateAfterEachStoryRun(cls): | 141 def ShouldTearDownStateAfterEachStoryRun(cls): |
| 146 return True | 142 return True |
| 147 | 143 |
| 148 @classmethod | 144 @classmethod |
| 149 def Name(cls): | 145 def Name(cls): |
| 150 return 'system_health.webview_startup' | 146 return 'system_health.webview_startup' |
| OLD | NEW |