summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorerikchen <erikchen@chromium.org>2015-04-10 18:43:58 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-11 01:44:25 +0000
commit2a72e51950ce93decbfab801245667094099eb2c (patch)
tree91f38ae367dac3115e7e516c9eccc9311225c6c1
parente6a9b7fff4802ac6796250987be4d52204716392 (diff)
downloadchromium_src-2a72e51950ce93decbfab801245667094099eb2c.zip
chromium_src-2a72e51950ce93decbfab801245667094099eb2c.tar.gz
chromium_src-2a72e51950ce93decbfab801245667094099eb2c.tar.bz2
Telemetry: Add browser startup timeout option.
Add an option to BrowserFinderOptions that controls the amount of time Telemetry will wait for the browser to start before giving up. BUG=473827 Review URL: https://codereview.chromium.org/1063763004 Cr-Commit-Position: refs/heads/master@{#324744}
-rw-r--r--tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py3
-rw-r--r--tools/telemetry/telemetry/core/browser_options.py12
2 files changed, 14 insertions, 1 deletions
diff --git a/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py b/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
index 7a5ebac..c7d29a6 100644
--- a/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
+++ b/tools/telemetry/telemetry/core/backends/chrome/chrome_browser_backend.py
@@ -188,7 +188,8 @@ class ChromeBrowserBackend(browser_backend.BrowserBackend):
def _WaitForBrowserToComeUp(self):
""" Wait for browser to come up. """
try:
- util.WaitFor(self.HasBrowserFinishedLaunching, timeout=30)
+ timeout = self.browser_options.browser_startup_timeout
+ util.WaitFor(self.HasBrowserFinishedLaunching, timeout=timeout)
except (exceptions.TimeoutException, exceptions.ProcessGoneException) as e:
if not self.IsBrowserRunning():
raise exceptions.BrowserGoneException(self.browser, e)
diff --git a/tools/telemetry/telemetry/core/browser_options.py b/tools/telemetry/telemetry/core/browser_options.py
index 9bacf1e..16fb585 100644
--- a/tools/telemetry/telemetry/core/browser_options.py
+++ b/tools/telemetry/telemetry/core/browser_options.py
@@ -223,6 +223,10 @@ class BrowserOptions(object):
self.wpr_mode = wpr_modes.WPR_OFF
self.netsim = None
+ # The amount of time Telemetry should wait for the browser to start.
+ # This property is not exposed as a command line option.
+ self._browser_startup_timeout = 30
+
self.disable_background_networking = True
self.no_proxy_server = False
self.browser_user_agent_type = None
@@ -366,6 +370,14 @@ class BrowserOptions(object):
def extra_browser_args(self):
return self._extra_browser_args
+ @property
+ def browser_startup_timeout(self):
+ return self._browser_startup_timeout
+
+ @browser_startup_timeout.setter
+ def browser_startup_timeout(self, value):
+ self._browser_startup_timeout = value
+
def AppendExtraBrowserArgs(self, args):
if isinstance(args, list):
self._extra_browser_args.update(args)