Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(161)

Unified Diff: tools/perf/benchmarks/session_restore.py

Issue 317733002: [Telemetry] Make session restore benchmark not require arguments. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | tools/perf/benchmarks/session_restore_with_url.py » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: tools/perf/benchmarks/session_restore.py
diff --git a/tools/perf/benchmarks/session_restore.py b/tools/perf/benchmarks/session_restore.py
index 0b1ac8ecaa16f8165a0db90680ccb97dd691416c..de0ec703102f29a12e74f727ee7541ec1a21d51b 100644
--- a/tools/perf/benchmarks/session_restore.py
+++ b/tools/perf/benchmarks/session_restore.py
@@ -2,12 +2,35 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
+import os
+import tempfile
+
from measurements import session_restore
+from measurements import session_restore_with_url
+from profile_creators import small_profile_creator
from telemetry import test
+from telemetry.page import profile_generator
+
+
+class _SessionRestoreTest(test.Test):
+
+ @classmethod
+ def ProcessCommandLineArgs(cls, parser, args):
+ super(_SessionRestoreTest, cls).ProcessCommandLineArgs(parser, args)
+ profile_type = 'small_profile'
+ if not args.browser_options.profile_dir:
+ profile_dir = os.path.join(tempfile.gettempdir(), profile_type)
+ if not os.path.exists(profile_dir):
+ new_args = args.Copy()
+ new_args.pageset_repeat = 1
+ new_args.output_dir = profile_dir
+ profile_generator.GenerateProfiles(
+ small_profile_creator.SmallProfileCreator, profile_type, new_args)
+ args.browser_options.profile_dir = os.path.join(profile_dir, profile_type)
@test.Disabled('android') # crbug.com/325479
-class SessionRestoreColdTypical25(test.Test):
+class SessionRestoreColdTypical25(_SessionRestoreTest):
tag = 'cold'
test = session_restore.SessionRestore
page_set = 'page_sets/typical_25.py'
@@ -15,9 +38,27 @@ class SessionRestoreColdTypical25(test.Test):
'pageset_repeat': 5}
-class SessionRestoreWarmTypical25(test.Test):
+class SessionRestoreWarmTypical25(_SessionRestoreTest):
tag = 'warm'
test = session_restore.SessionRestore
page_set = 'page_sets/typical_25.py'
options = {'warm': True,
'pageset_repeat': 20}
+
+
+class SessionRestoreWithUrlCold(_SessionRestoreTest):
+ """Measure Chrome cold session restore with startup URLs."""
+ tag = 'cold'
+ test = session_restore_with_url.SessionRestoreWithUrl
+ page_set = 'page_sets/startup_pages.py'
+ options = {'cold': True,
+ 'pageset_repeat': 5}
+
+
+class SessionRestoreWithUrlWarm(_SessionRestoreTest):
+ """Measure Chrome warm session restore with startup URLs."""
+ tag = 'warm'
+ test = session_restore_with_url.SessionRestoreWithUrl
+ page_set = 'page_sets/startup_pages.py'
+ options = {'warm': True,
+ 'pageset_repeat': 10}
« no previous file with comments | « no previous file | tools/perf/benchmarks/session_restore_with_url.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698