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

Side by Side Diff: build/android/pylib/host_driven/run_python_tests.py

Issue 12921004: [Android] Enable running uiautomator tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 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 unified diff | Download patch | Annotate | Revision Log
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 """Runs the Python tests (relies on using the Java test runner).""" 5 """Runs the Python tests (relies on using the Java test runner)."""
6 6
7 import logging 7 import logging
8 import os 8 import os
9 import sys 9 import sys
10 import types 10 import types
11 11
12 from pylib import android_commands 12 from pylib import android_commands
13 from pylib import constants 13 from pylib import constants
14 from pylib.base.test_result import TestResults 14 from pylib.base.test_result import TestResults
15 from pylib.instrumentation import apk_info 15 from pylib.instrumentation import test_package
16 from pylib.instrumentation import test_runner 16 from pylib.instrumentation import test_runner
17 17
18 import python_test_base 18 import python_test_base
19 from python_test_caller import CallPythonTest 19 from python_test_caller import CallPythonTest
20 from python_test_sharder import PythonTestSharder 20 from python_test_sharder import PythonTestSharder
21 from test_info_collection import TestInfoCollection 21 from test_info_collection import TestInfoCollection
22 22
23 23
24 def _GetPythonFiles(root, files): 24 def _GetPythonFiles(root, files):
25 """Returns all files from |files| that end in 'Test.py'. 25 """Returns all files from |files| that end in 'Test.py'.
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 logging.warning('No Python tests to run with current args.') 77 logging.warning('No Python tests to run with current args.')
78 return TestResults() 78 return TestResults()
79 79
80 available_tests *= options.number_of_runs 80 available_tests *= options.number_of_runs
81 test_names = [t.qualified_name for t in available_tests] 81 test_names = [t.qualified_name for t in available_tests]
82 logging.debug('Final list of tests to run: ' + str(test_names)) 82 logging.debug('Final list of tests to run: ' + str(test_names))
83 83
84 # Copy files to each device before running any tests. 84 # Copy files to each device before running any tests.
85 for device_id in attached_devices: 85 for device_id in attached_devices:
86 logging.debug('Pushing files to device %s', device_id) 86 logging.debug('Pushing files to device %s', device_id)
87 apks = [apk_info.ApkInfo(options.test_apk_path, options.test_apk_jar_path)] 87 test_pkg = test_package.TestPackage(options.test_apk_path,
88 options.test_apk_jar_path)
88 test_files_copier = test_runner.TestRunner(options, device_id, 0, False, 89 test_files_copier = test_runner.TestRunner(options, device_id, 0, False,
89 apks, []) 90 test_pkg, [])
90 test_files_copier.CopyTestFilesOnce() 91 test_files_copier.CopyTestFilesOnce()
91 92
92 # Actually run the tests. 93 # Actually run the tests.
93 if len(attached_devices) > 1 and options.wait_for_debugger: 94 if len(attached_devices) > 1 and options.wait_for_debugger:
94 logging.warning('Debugger can not be sharded, ' 95 logging.warning('Debugger can not be sharded, '
95 'using first available device') 96 'using first available device')
96 attached_devices = attached_devices[:1] 97 attached_devices = attached_devices[:1]
97 logging.debug('Running Python tests') 98 logging.debug('Running Python tests')
98 sharder = PythonTestSharder(attached_devices, available_tests, options) 99 sharder = PythonTestSharder(attached_devices, available_tests, options)
99 test_results = sharder.RunShardedTests() 100 test_results = sharder.RunShardedTests()
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 Returns: 199 Returns:
199 List of test case objects for all available test methods. 200 List of test case objects for all available test methods.
200 """ 201 """
201 if not test_root: 202 if not test_root:
202 return [] 203 return []
203 all_tests = [] 204 all_tests = []
204 test_module_list = _GetTestModules(test_root, is_official_build) 205 test_module_list = _GetTestModules(test_root, is_official_build)
205 for module in test_module_list: 206 for module in test_module_list:
206 all_tests.extend(_GetTestClassesFromModule(module)) 207 all_tests.extend(_GetTestClassesFromModule(module))
207 return all_tests 208 return all_tests
OLDNEW
« no previous file with comments | « build/android/pylib/host_driven/python_test_base.py ('k') | build/android/pylib/instrumentation/apk_info.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698