| OLD | NEW |
| 1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 metrics import startup_metric | 5 from metrics import startup_metric |
| 6 from telemetry.page import page_measurement | 6 from telemetry.page import page_measurement |
| 7 | 7 |
| 8 | 8 |
| 9 class Startup(page_measurement.PageMeasurement): | 9 class Startup(page_measurement.PageMeasurement): |
| 10 """Performs a measurement of Chromium's startup performance. | 10 """Performs a measurement of Chromium's startup performance. |
| 11 | 11 |
| 12 This test must be invoked with either --warm or --cold on the command line. A | 12 This test must be invoked with either --warm or --cold on the command line. A |
| 13 cold start means none of the Chromium files are in the disk cache. A warm | 13 cold start means none of the Chromium files are in the disk cache. A warm |
| 14 start assumes the OS has already cached much of Chromium's content. For warm | 14 start assumes the OS has already cached much of Chromium's content. For warm |
| 15 tests, you should repeat the page set to ensure it's cached. | 15 tests, you should repeat the page set to ensure it's cached. |
| 16 """ | 16 """ |
| 17 | 17 |
| 18 def __init__(self, action_name_to_run = ''): | 18 def __init__(self, action_name_to_run = ''): |
| 19 super(Startup, self).__init__(needs_browser_restart_after_each_run=True, | 19 super(Startup, self).__init__(needs_browser_restart_after_each_page=True, |
| 20 action_name_to_run=action_name_to_run) | 20 action_name_to_run=action_name_to_run) |
| 21 | 21 |
| 22 def AddCommandLineOptions(self, parser): | 22 def AddCommandLineOptions(self, parser): |
| 23 parser.add_option('--cold', action='store_true', | 23 parser.add_option('--cold', action='store_true', |
| 24 help='Clear the OS disk cache before performing the test') | 24 help='Clear the OS disk cache before performing the test') |
| 25 parser.add_option('--warm', action='store_true', | 25 parser.add_option('--warm', action='store_true', |
| 26 help='Start up with everything already cached') | 26 help='Start up with everything already cached') |
| 27 | 27 |
| 28 def CustomizeBrowserOptions(self, options): | 28 def CustomizeBrowserOptions(self, options): |
| 29 # TODO: Once the bots start running benchmarks, enforce that either --warm | 29 # TODO: Once the bots start running benchmarks, enforce that either --warm |
| (...skipping 25 matching lines...) Expand all Loading... |
| 55 cold start means none of the Chromium files are in the disk cache. A warm | 55 cold start means none of the Chromium files are in the disk cache. A warm |
| 56 start assumes the OS has already cached much of Chromium's content. For warm | 56 start assumes the OS has already cached much of Chromium's content. For warm |
| 57 tests, you should repeat the page set to ensure it's cached. | 57 tests, you should repeat the page set to ensure it's cached. |
| 58 | 58 |
| 59 The startup URL is taken from the page set's set_startup_url action. This | 59 The startup URL is taken from the page set's set_startup_url action. This |
| 60 allows the testing of multiple different URLs in a single benchmark. | 60 allows the testing of multiple different URLs in a single benchmark. |
| 61 """ | 61 """ |
| 62 | 62 |
| 63 def __init__(self): | 63 def __init__(self): |
| 64 super(StartWithUrl, self).__init__(action_name_to_run='navigate_steps') | 64 super(StartWithUrl, self).__init__(action_name_to_run='navigate_steps') |
| OLD | NEW |