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

Side by Side Diff: build/android/pylib/single_test_runner.py

Issue 11575019: Remove --performance_test from Android gtest runner. (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 | « no previous file | build/android/pylib/test_package.py » ('j') | 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 4
5 import glob 5 import glob
6 import logging 6 import logging
7 import os 7 import os
8 import sys 8 import sys
9 9
10 import android_commands 10 import android_commands
(...skipping 10 matching lines...) Expand all
21 21
22 class SingleTestRunner(BaseTestRunner): 22 class SingleTestRunner(BaseTestRunner):
23 """Single test suite attached to a single device. 23 """Single test suite attached to a single device.
24 24
25 Args: 25 Args:
26 device: Device to run the tests. 26 device: Device to run the tests.
27 test_suite: A specific test suite to run, empty to run all. 27 test_suite: A specific test suite to run, empty to run all.
28 gtest_filter: A gtest_filter flag. 28 gtest_filter: A gtest_filter flag.
29 test_arguments: Additional arguments to pass to the test binary. 29 test_arguments: Additional arguments to pass to the test binary.
30 timeout: Timeout for each test. 30 timeout: Timeout for each test.
31 performance_test: Whether or not performance test(s).
32 cleanup_test_files: Whether or not to cleanup test files on device. 31 cleanup_test_files: Whether or not to cleanup test files on device.
33 tool: Name of the Valgrind tool. 32 tool: Name of the Valgrind tool.
34 shard_index: index number of the shard on which the test suite will run. 33 shard_index: index number of the shard on which the test suite will run.
35 dump_debug_info: Whether or not to dump debug information. 34 dump_debug_info: Whether or not to dump debug information.
36 build_type: 'Release' or 'Debug'. 35 build_type: 'Release' or 'Debug'.
37 in_webkit_checkout: Whether the suite is being run from a WebKit checkout. 36 in_webkit_checkout: Whether the suite is being run from a WebKit checkout.
38 """ 37 """
39 38
40 def __init__(self, device, test_suite, gtest_filter, test_arguments, timeout, 39 def __init__(self, device, test_suite, gtest_filter, test_arguments, timeout,
41 performance_test, cleanup_test_files, tool_name, 40 cleanup_test_files, tool_name, shard_index, dump_debug_info,
42 shard_index, dump_debug_info, fast_and_loose, build_type, 41 fast_and_loose, build_type, in_webkit_checkout):
43 in_webkit_checkout):
44 BaseTestRunner.__init__(self, device, tool_name, shard_index, build_type) 42 BaseTestRunner.__init__(self, device, tool_name, shard_index, build_type)
45 self._running_on_emulator = self.device.startswith('emulator') 43 self._running_on_emulator = self.device.startswith('emulator')
46 self._gtest_filter = gtest_filter 44 self._gtest_filter = gtest_filter
47 self._test_arguments = test_arguments 45 self._test_arguments = test_arguments
48 self.test_results = TestResults() 46 self.test_results = TestResults()
49 if dump_debug_info: 47 if dump_debug_info:
50 self.dump_debug_info = debug_info.GTestDebugInfo( 48 self.dump_debug_info = debug_info.GTestDebugInfo(
51 self.adb, device, 49 self.adb, device,
52 os.path.basename(test_suite), gtest_filter) 50 os.path.basename(test_suite), gtest_filter)
53 else: 51 else:
54 self.dump_debug_info = None 52 self.dump_debug_info = None
55 self.fast_and_loose = fast_and_loose 53 self.fast_and_loose = fast_and_loose
56 self.in_webkit_checkout = in_webkit_checkout 54 self.in_webkit_checkout = in_webkit_checkout
57 55
58 logging.warning('Test suite: ' + test_suite) 56 logging.warning('Test suite: ' + test_suite)
59 if os.path.splitext(test_suite)[1] == '.apk': 57 if os.path.splitext(test_suite)[1] == '.apk':
60 self.test_package = TestPackageApk( 58 self.test_package = TestPackageApk(
61 self.adb, 59 self.adb,
62 device, 60 device,
63 test_suite, 61 test_suite,
64 timeout, 62 timeout,
65 performance_test,
66 cleanup_test_files, 63 cleanup_test_files,
67 self.tool, 64 self.tool,
68 self.dump_debug_info) 65 self.dump_debug_info)
69 else: 66 else:
70 # Put a copy into the android out/target directory, to allow stack trace 67 # Put a copy into the android out/target directory, to allow stack trace
71 # generation. 68 # generation.
72 symbols_dir = os.path.join(constants.CHROME_DIR, 'out', build_type, 69 symbols_dir = os.path.join(constants.CHROME_DIR, 'out', build_type,
73 'lib.target') 70 'lib.target')
74 self.test_package = TestPackageExecutable( 71 self.test_package = TestPackageExecutable(
75 self.adb, 72 self.adb,
76 device, 73 device,
77 test_suite, timeout, 74 test_suite, timeout,
78 performance_test,
79 cleanup_test_files, 75 cleanup_test_files,
80 self.tool, 76 self.tool,
81 self.dump_debug_info, 77 self.dump_debug_info,
82 symbols_dir) 78 symbols_dir)
83 self._performance_test_setup = None
84 if performance_test:
85 self._performance_test_setup = perf_tests_helper.PerfTestSetup(self.adb)
86 79
87 def _TestSuiteRequiresMockTestServer(self): 80 def _TestSuiteRequiresMockTestServer(self):
88 """Returns True if the test suite requires mock test server.""" 81 """Returns True if the test suite requires mock test server."""
89 tests_require_net_test_server = ['unit_tests', 'net_unittests', 82 tests_require_net_test_server = ['unit_tests', 'net_unittests',
90 'content_unittests'] 83 'content_unittests']
91 return (self.test_package.test_suite_basename in 84 return (self.test_package.test_suite_basename in
92 tests_require_net_test_server) 85 tests_require_net_test_server)
93 86
94 def _GetFilterFileName(self): 87 def _GetFilterFileName(self):
95 """Returns the filename of gtest filter.""" 88 """Returns the filename of gtest filter."""
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
275 failed_tests += [BaseTestResult(t, '')] 268 failed_tests += [BaseTestResult(t, '')]
276 self.test_results = TestResults.FromRun( 269 self.test_results = TestResults.FromRun(
277 failed=failed_tests, device_exception=self.device) 270 failed=failed_tests, device_exception=self.device)
278 271
279 return self.test_results 272 return self.test_results
280 273
281 def SetUp(self): 274 def SetUp(self):
282 """Sets up necessary test enviroment for the test suite.""" 275 """Sets up necessary test enviroment for the test suite."""
283 super(SingleTestRunner, self).SetUp() 276 super(SingleTestRunner, self).SetUp()
284 self.adb.ClearApplicationState(constants.CHROME_PACKAGE) 277 self.adb.ClearApplicationState(constants.CHROME_PACKAGE)
285 if self._performance_test_setup:
286 self._performance_test_setup.SetUp()
287 if self.dump_debug_info: 278 if self.dump_debug_info:
288 self.dump_debug_info.StartRecordingLog(True) 279 self.dump_debug_info.StartRecordingLog(True)
289 self.StripAndCopyFiles() 280 self.StripAndCopyFiles()
290 self.LaunchHelperToolsForTestSuite() 281 self.LaunchHelperToolsForTestSuite()
291 self.tool.SetupEnvironment() 282 self.tool.SetupEnvironment()
292 283
293 def TearDown(self): 284 def TearDown(self):
294 """Cleans up the test enviroment for the test suite.""" 285 """Cleans up the test enviroment for the test suite."""
295 self.tool.CleanUpEnvironment() 286 self.tool.CleanUpEnvironment()
296 if self.test_package.cleanup_test_files: 287 if self.test_package.cleanup_test_files:
297 self.adb.RemovePushedFiles() 288 self.adb.RemovePushedFiles()
298 if self.dump_debug_info: 289 if self.dump_debug_info:
299 self.dump_debug_info.StopRecordingLog() 290 self.dump_debug_info.StopRecordingLog()
300 if self._performance_test_setup:
301 self._performance_test_setup.TearDown()
302 if self.dump_debug_info: 291 if self.dump_debug_info:
303 self.dump_debug_info.ArchiveNewCrashFiles() 292 self.dump_debug_info.ArchiveNewCrashFiles()
304 super(SingleTestRunner, self).TearDown() 293 super(SingleTestRunner, self).TearDown()
OLDNEW
« no previous file with comments | « no previous file | build/android/pylib/test_package.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698