| OLD | NEW |
| 1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 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 logging | 5 import logging |
| 6 import time | 6 import time |
| 7 | 7 |
| 8 from telemetry.testing import tab_test_case | 8 from telemetry.testing import tab_test_case |
| 9 from telemetry import decorators | 9 from telemetry import decorators |
| 10 from telemetry.core import util | 10 from telemetry.core import util |
| 11 | 11 |
| 12 class BrowserMinidumpTest(tab_test_case.TabTestCase): | 12 class BrowserMinidumpTest(tab_test_case.TabTestCase): |
| 13 @decorators.Isolated | 13 @decorators.Isolated |
| 14 @decorators.Enabled('mac') | 14 # Disabled tests due to flakiness: http://crbug.com/641469 |
| 15 @decorators.Disabled('all') |
| 15 def testSymbolizeMinidump(self): | 16 def testSymbolizeMinidump(self): |
| 16 # Wait for the browser to restart fully before crashing | 17 # Wait for the browser to restart fully before crashing |
| 17 self._LoadPageThenWait('var sam = "car";', 'sam') | 18 self._LoadPageThenWait('var sam = "car";', 'sam') |
| 18 self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) | 19 self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) |
| 19 crash_minidump_path = self._browser.GetMostRecentMinidumpPath() | 20 crash_minidump_path = self._browser.GetMostRecentMinidumpPath() |
| 20 #self.assertIsNotNone(crash_minidump_path) | 21 #self.assertIsNotNone(crash_minidump_path) |
| 21 | 22 |
| 22 if crash_minidump_path is not None: | 23 if crash_minidump_path is not None: |
| 23 logging.info('testSymbolizeMinidump: most recent path = ' | 24 logging.info('testSymbolizeMinidump: most recent path = ' |
| 24 + crash_minidump_path) | 25 + crash_minidump_path) |
| (...skipping 12 matching lines...) Expand all Loading... |
| 37 all_unsymbolized_after_symbolize_paths = \ | 38 all_unsymbolized_after_symbolize_paths = \ |
| 38 self._browser.GetAllUnsymbolizedMinidumpPaths() | 39 self._browser.GetAllUnsymbolizedMinidumpPaths() |
| 39 if all_unsymbolized_after_symbolize_paths is not None: | 40 if all_unsymbolized_after_symbolize_paths is not None: |
| 40 logging.info('testSymbolizeMinidump: after symbolize all ' | 41 logging.info('testSymbolizeMinidump: after symbolize all ' |
| 41 + 'unsymbolized paths: ' | 42 + 'unsymbolized paths: ' |
| 42 + ''.join(all_unsymbolized_after_symbolize_paths)) | 43 + ''.join(all_unsymbolized_after_symbolize_paths)) |
| 43 #self.assertTrue(len(all_unsymbolized_after_symbolize_paths) == 0) | 44 #self.assertTrue(len(all_unsymbolized_after_symbolize_paths) == 0) |
| 44 | 45 |
| 45 | 46 |
| 46 @decorators.Isolated | 47 @decorators.Isolated |
| 47 @decorators.Enabled('mac') | 48 # Disabled tests due to flakiness: http://crbug.com/641469 |
| 49 @decorators.Disabled('all') |
| 48 def testMultipleCrashMinidumps(self): | 50 def testMultipleCrashMinidumps(self): |
| 49 # Wait for the browser to restart fully before crashing | 51 # Wait for the browser to restart fully before crashing |
| 50 self._LoadPageThenWait('var cat = "dog";', 'cat') | 52 self._LoadPageThenWait('var cat = "dog";', 'cat') |
| 51 self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) | 53 self._browser.tabs.New().Navigate('chrome://gpucrash', timeout=5) |
| 52 first_crash_path = self._browser.GetMostRecentMinidumpPath() | 54 first_crash_path = self._browser.GetMostRecentMinidumpPath() |
| 53 | 55 |
| 54 #self.assertIsNotNone(first_crash_path) | 56 #self.assertIsNotNone(first_crash_path) |
| 55 if first_crash_path is not None: | 57 if first_crash_path is not None: |
| 56 logging.info('testMultipleCrashMinidumps: first crash most recent path' | 58 logging.info('testMultipleCrashMinidumps: first crash most recent path' |
| 57 + first_crash_path) | 59 + first_crash_path) |
| (...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 123 # Therefore, we are adding a 5 second wait for now to see if this can help | 125 # Therefore, we are adding a 5 second wait for now to see if this can help |
| 124 # the problem until we determine if there is another chrome process we can | 126 # the problem until we determine if there is another chrome process we can |
| 125 # wait on to ensure that all browser load processes have finished | 127 # wait on to ensure that all browser load processes have finished |
| 126 time.sleep(5) | 128 time.sleep(5) |
| 127 new_tab = self._browser.tabs.New() | 129 new_tab = self._browser.tabs.New() |
| 128 new_tab.Navigate(self.UrlOfUnittestFile('blank.html'), | 130 new_tab.Navigate(self.UrlOfUnittestFile('blank.html'), |
| 129 script_to_evaluate_on_commit=script) | 131 script_to_evaluate_on_commit=script) |
| 130 # Wait until the javascript has run ensuring that | 132 # Wait until the javascript has run ensuring that |
| 131 # the new browser has restarted before we crash it again | 133 # the new browser has restarted before we crash it again |
| 132 util.WaitFor(lambda: new_tab.EvaluateJavaScript(value), 60) | 134 util.WaitFor(lambda: new_tab.EvaluateJavaScript(value), 60) |
| OLD | NEW |