summaryrefslogtreecommitdiffstats
path: root/webkit
diff options
context:
space:
mode:
authorojan@google.com <ojan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-08 00:45:51 +0000
committerojan@google.com <ojan@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-04-08 00:45:51 +0000
commit811b9e92113795df7fd2315bedfa114a8a83192a (patch)
treec89d34386d92472d900b65bf99880f07f3f7556c /webkit
parentaf78d78010662593ce8658f5d2569509a093585b (diff)
downloadchromium_src-811b9e92113795df7fd2315bedfa114a8a83192a.zip
chromium_src-811b9e92113795df7fd2315bedfa114a8a83192a.tar.gz
chromium_src-811b9e92113795df7fd2315bedfa114a8a83192a.tar.bz2
Increase default timeout for webkit tests to 20seconds.
I'm pretty confident that we're hitting this because the CPUs are overloaded and tests that are on the verge of timing out do actually timeout. Long term, we should track how long each test takes to run and spit out the longest running ones. Then we should provide a way to do per test timeouts and mark those tests appropriately in the test_expectations file. Review URL: http://codereview.chromium.org/63102 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@13318 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'webkit')
-rw-r--r--webkit/tools/layout_tests/layout_package/test_shell_thread.py7
-rwxr-xr-xwebkit/tools/layout_tests/run_webkit_tests.py14
2 files changed, 12 insertions, 9 deletions
diff --git a/webkit/tools/layout_tests/layout_package/test_shell_thread.py b/webkit/tools/layout_tests/layout_package/test_shell_thread.py
index 65415be..61a5d87 100644
--- a/webkit/tools/layout_tests/layout_package/test_shell_thread.py
+++ b/webkit/tools/layout_tests/layout_package/test_shell_thread.py
@@ -25,11 +25,6 @@ import path_utils
import platform_utils
import test_failures
-# The per-test timeout in milliseconds, if no --time-out-ms option was given to
-# run_webkit_tests. This should correspond to the default timeout in
-# test_shell.exe.
-DEFAULT_TEST_TIMEOUT_MS = 10 * 1000
-
def ProcessOutput(proc, filename, test_uri, test_types, test_args, target):
"""Receives the output from a test_shell process, subjects it to a number
of tests, and returns a list of failure types the test produced.
@@ -193,8 +188,6 @@ class TestShellThread(threading.Thread):
# a hard timeout. test_shell uses a default of 10 seconds if no
# time-out-ms is given, and the test_shell watchdog uses 2.5x the
# test_shell's value. We want to be larger than that.
- if not self._options.time_out_ms:
- self._options.time_out_ms = DEFAULT_TEST_TIMEOUT_MS
self._time_out_sec = int(self._options.time_out_ms) * 3.0 / 1000.0
logging.info("Setting Python per-test timeout to %s ms (%s sec)" %
(1000 * self._time_out_sec, self._time_out_sec))
diff --git a/webkit/tools/layout_tests/run_webkit_tests.py b/webkit/tools/layout_tests/run_webkit_tests.py
index e86668f..e1414ed 100755
--- a/webkit/tools/layout_tests/run_webkit_tests.py
+++ b/webkit/tools/layout_tests/run_webkit_tests.py
@@ -63,6 +63,11 @@ class TestRunner:
HTTP_SUBDIR = os.sep.join(['', 'http', ''])
+ # The per-test timeout in milliseconds, if no --time-out-ms option was given
+ # to run_webkit_tests. This should correspond to the default timeout in
+ # test_shell.exe.
+ DEFAULT_TEST_TIMEOUT_MS = 10 * 1000
+
def __init__(self, options, paths, platform_new_results_dir):
"""Collect a list of files to test.
@@ -791,7 +796,6 @@ def main(options, args):
# that as the name of the output directory for rebaselined files.
platform_new_results_dir = options.platform
-
if not options.num_test_shells:
# Only run stable configurations with multiple test_shells by default.
if options.target == 'Release':
@@ -815,7 +819,13 @@ def main(options, args):
options.num_test_shells = 1
logging.info("Running %s test_shells in parallel" % options.num_test_shells)
-
+
+ if not options.time_out_ms:
+ if options.num_test_shells > 1:
+ options.time_out_ms = str(2 * TestRunner.DEFAULT_TEST_TIMEOUT_MS)
+ else:
+ options.time_out_ms = str(TestRunner.DEFAULT_TEST_TIMEOUT_MS)
+
# Include all tests if none are specified.
paths = args
if not paths: