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

Side by Side Diff: chrome_frame/test/reliability/page_load_test.cc

Issue 28283002: Track execution phase of browser process when we log if the broswer has (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fixed jar's comments Created 7 years, 1 month 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
« no previous file with comments | « chrome/common/pref_names.cc ('k') | no next file » | 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 // This file provides reliablity tests which run for ChromeFrame. 5 // This file provides reliablity tests which run for ChromeFrame.
6 // 6 //
7 // Usage: 7 // Usage:
8 // <reliability test exe> --list=file --startline=start --endline=end [...] 8 // <reliability test exe> --list=file --startline=start --endline=end [...]
9 // Upon invocation, it visits each of the URLs on line numbers between start 9 // Upon invocation, it visits each of the URLs on line numbers between start
10 // and end, inclusive, stored in the input file. The line number starts from 1. 10 // and end, inclusive, stored in the input file. The line number starts from 1.
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 NAVIGATION_ERROR = 0, 129 NAVIGATION_ERROR = 0,
130 NAVIGATION_SUCCESS, 130 NAVIGATION_SUCCESS,
131 }; 131 };
132 132
133 typedef struct { 133 typedef struct {
134 // These are results from the test automation that drives Chrome 134 // These are results from the test automation that drives Chrome
135 NavigationResult result; 135 NavigationResult result;
136 int crash_dump_count; 136 int crash_dump_count;
137 // These are stability metrics recorded by Chrome itself 137 // These are stability metrics recorded by Chrome itself
138 bool browser_clean_exit; 138 bool browser_clean_exit;
139 int browser_execution_phase;
139 int browser_launch_count; 140 int browser_launch_count;
140 int page_load_count; 141 int page_load_count;
141 int browser_crash_count; 142 int browser_crash_count;
142 int renderer_crash_count; 143 int renderer_crash_count;
143 int plugin_crash_count; 144 int plugin_crash_count;
144 } NavigationMetrics; 145 } NavigationMetrics;
145 146
146 PageLoadTest() {} 147 PageLoadTest() {}
147 148
148 // Accept URL as std::string here because the url may also act as a test id 149 // Accept URL as std::string here because the url may also act as a test id
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
439 JsonPrefStore::GetTaskRunnerForFile( 440 JsonPrefStore::GetTaskRunnerForFile(
440 path, content::BrowserThread::GetBlockingPool())); 441 path, content::BrowserThread::GetBlockingPool()));
441 return builder.Create(registry); 442 return builder.Create(registry);
442 } 443 }
443 444
444 void GetStabilityMetrics(NavigationMetrics* metrics) { 445 void GetStabilityMetrics(NavigationMetrics* metrics) {
445 if (!metrics) 446 if (!metrics)
446 return; 447 return;
447 scoped_refptr<PrefRegistrySimple> registry = new PrefRegistrySimple(); 448 scoped_refptr<PrefRegistrySimple> registry = new PrefRegistrySimple();
448 registry->RegisterBooleanPref(prefs::kStabilityExitedCleanly, false); 449 registry->RegisterBooleanPref(prefs::kStabilityExitedCleanly, false);
450 registry->RegisterIntegerPref(prefs::kStabilityExecutionPhase, 0);
449 registry->RegisterIntegerPref(prefs::kStabilityLaunchCount, -1); 451 registry->RegisterIntegerPref(prefs::kStabilityLaunchCount, -1);
450 registry->RegisterIntegerPref(prefs::kStabilityPageLoadCount, -1); 452 registry->RegisterIntegerPref(prefs::kStabilityPageLoadCount, -1);
451 registry->RegisterIntegerPref(prefs::kStabilityCrashCount, 0); 453 registry->RegisterIntegerPref(prefs::kStabilityCrashCount, 0);
452 registry->RegisterIntegerPref(prefs::kStabilityRendererCrashCount, 0); 454 registry->RegisterIntegerPref(prefs::kStabilityRendererCrashCount, 0);
453 455
454 scoped_ptr<PrefService> local_state(GetLocalState(registry)); 456 scoped_ptr<PrefService> local_state(GetLocalState(registry));
455 if (!local_state.get()) 457 if (!local_state.get())
456 return; 458 return;
457 459
458 metrics->browser_clean_exit = 460 metrics->browser_clean_exit =
459 local_state->GetBoolean(prefs::kStabilityExitedCleanly); 461 local_state->GetBoolean(prefs::kStabilityExitedCleanly);
462 metrics->browser_execution_phase =
463 local_state->GetInteger(prefs::kStabilityExecutionPhase);
460 metrics->browser_launch_count = 464 metrics->browser_launch_count =
461 local_state->GetInteger(prefs::kStabilityLaunchCount); 465 local_state->GetInteger(prefs::kStabilityLaunchCount);
462 metrics->page_load_count = 466 metrics->page_load_count =
463 local_state->GetInteger(prefs::kStabilityPageLoadCount); 467 local_state->GetInteger(prefs::kStabilityPageLoadCount);
464 metrics->browser_crash_count = 468 metrics->browser_crash_count =
465 local_state->GetInteger(prefs::kStabilityCrashCount); 469 local_state->GetInteger(prefs::kStabilityCrashCount);
466 metrics->renderer_crash_count = 470 metrics->renderer_crash_count =
467 local_state->GetInteger(prefs::kStabilityRendererCrashCount); 471 local_state->GetInteger(prefs::kStabilityRendererCrashCount);
468 // TODO(huanr) 472 // TODO(huanr)
469 metrics->plugin_crash_count = 0; 473 metrics->plugin_crash_count = 0;
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
588 CommandLine v8_command_line( 592 CommandLine v8_command_line(
589 parsed_command_line.GetSwitchValuePath(switches::kJavaScriptFlags)); 593 parsed_command_line.GetSwitchValuePath(switches::kJavaScriptFlags));
590 if (v8_command_line.HasSwitch(kV8LogFileSwitch)) { 594 if (v8_command_line.HasSwitch(kV8LogFileSwitch)) {
591 g_v8_log_path = base::MakeAbsoluteFilePath( 595 g_v8_log_path = base::MakeAbsoluteFilePath(
592 v8_command_line.GetSwitchValuePath(kV8LogFileSwitch)); 596 v8_command_line.GetSwitchValuePath(kV8LogFileSwitch));
593 } 597 }
594 } 598 }
595 } 599 }
596 } 600 }
597 } 601 }
OLDNEW
« no previous file with comments | « chrome/common/pref_names.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698