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

Side by Side Diff: tools/telemetry/telemetry/multi_page_benchmark_unittest_base.py

Issue 11366197: Refactoring benchmarks for perf bot efficiency. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « tools/perf/perf_tools/texture_upload_benchmark.py ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 import browser_finder 7 from telemetry import browser_finder
8 from telemetry import multi_page_benchmark 8 from telemetry import multi_page_benchmark
9 from telemetry import options_for_unittests 9 from telemetry import options_for_unittests
10 from telemetry import page_runner 10 from telemetry import page_runner
11 from telemetry import page as page_module 11 from telemetry import page as page_module
12 from telemetry import page_set 12 from telemetry import page_set
13 13
14 class MultiPageBenchmarkUnitTestBase(unittest.TestCase): 14 class MultiPageBenchmarkUnitTestBase(unittest.TestCase):
15 """unittest.TestCase-derived class to help in the construction of unit tests 15 """unittest.TestCase-derived class to help in the construction of unit tests
16 for a benchmark.""" 16 for a benchmark."""
17 17
18 def CreatePageSetFromFileInUnittestDataDir(self, test_filename): 18 def CreatePageSetFromFileInUnittestDataDir(self, test_filename):
19 return self.CreatePageSet('file:///' + os.path.join('..', 'unittest_data', 19 return self.CreatePageSet('file:///' + os.path.join('..', 'unittest_data',
20 test_filename)) 20 test_filename))
21 21
22 def CreatePageSet(self, test_filename): 22 def CreatePageSet(self, test_filename):
23 base_dir = os.path.dirname(__file__) 23 base_dir = os.path.dirname(__file__)
24 page = page_module.Page(test_filename, base_dir=base_dir) 24 page = page_module.Page(test_filename, base_dir=base_dir)
25 setattr(page, 'scrolling', {'action': 'scrolling_interaction'})
25 ps = page_set.PageSet(base_dir=base_dir) 26 ps = page_set.PageSet(base_dir=base_dir)
26 ps.pages.append(page) 27 ps.pages.append(page)
27 return ps 28 return ps
28 29
29 def CustomizeOptionsForTest(self, options): 30 def CustomizeOptionsForTest(self, options):
30 """Override to customize default options.""" 31 """Override to customize default options."""
31 pass 32 pass
32 33
33 def RunBenchmark(self, benchmark, ps): 34 def RunBenchmark(self, benchmark, ps):
34 """Runs a benchmark against a pageset, returning the rows its outputs.""" 35 """Runs a benchmark against a pageset, returning the rows its outputs."""
35 options = options_for_unittests.Get() 36 options = options_for_unittests.Get()
36 assert options 37 assert options
37 temp_parser = options.CreateParser() 38 temp_parser = options.CreateParser()
38 benchmark.AddCommandLineOptions(temp_parser) 39 benchmark.AddCommandLineOptions(temp_parser)
39 defaults = temp_parser.get_default_values() 40 defaults = temp_parser.get_default_values()
40 for k, v in defaults.__dict__.items(): 41 for k, v in defaults.__dict__.items():
41 if hasattr(options, k): 42 if hasattr(options, k):
42 continue 43 continue
43 setattr(options, k, v) 44 setattr(options, k, v)
44 45
45 benchmark.CustomizeBrowserOptions(options) 46 benchmark.CustomizeBrowserOptions(options)
46 self.CustomizeOptionsForTest(options) 47 self.CustomizeOptionsForTest(options)
47 possible_browser = browser_finder.FindBrowser(options) 48 possible_browser = browser_finder.FindBrowser(options)
48 49
49 results = multi_page_benchmark.BenchmarkResults() 50 results = multi_page_benchmark.BenchmarkResults()
50 with page_runner.PageRunner(ps) as runner: 51 with page_runner.PageRunner(ps) as runner:
51 runner.Run(options, possible_browser, benchmark, results) 52 runner.Run(options, possible_browser, benchmark, results)
52 return results 53 return results
OLDNEW
« no previous file with comments | « tools/perf/perf_tools/texture_upload_benchmark.py ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698