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

Side by Side Diff: chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc

Issue 2699933003: Generalize abort tracking to page end state tracking (Closed)
Patch Set: add additional histogram Created 3 years, 10 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
OLDNEW
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 #include "base/files/scoped_temp_dir.h" 5 #include "base/files/scoped_temp_dir.h"
6 #include "base/macros.h" 6 #include "base/macros.h"
7 #include "base/test/histogram_tester.h" 7 #include "base/test/histogram_tester.h"
8 #include "base/time/time.h" 8 #include "base/time/time.h"
9 #include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h" 9 #include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h"
10 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob server.h" 10 #include "chrome/browser/page_load_metrics/observers/aborts_page_load_metrics_ob server.h"
(...skipping 421 matching lines...) Expand 10 before | Expand all | Expand 10 after
432 432
433 EXPECT_TRUE(manager3.WaitForRequestStart()); 433 EXPECT_TRUE(manager3.WaitForRequestStart());
434 manager2.WaitForNavigationFinished(); 434 manager2.WaitForNavigationFinished();
435 435
436 manager3.WaitForNavigationFinished(); 436 manager3.WaitForNavigationFinished();
437 437
438 histogram_tester_.ExpectTotalCount( 438 histogram_tester_.ExpectTotalCount(
439 internal::kHistogramAbortNewNavigationBeforeCommit, 2); 439 internal::kHistogramAbortNewNavigationBeforeCommit, 2);
440 } 440 }
441 441
442 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, AbortClientRedirect) { 442 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
443 NoAbortMetricsOnClientRedirect) {
443 ASSERT_TRUE(embedded_test_server()->Start()); 444 ASSERT_TRUE(embedded_test_server()->Start());
444 445
445 GURL first_url(embedded_test_server()->GetURL("/title1.html")); 446 GURL first_url(embedded_test_server()->GetURL("/title1.html"));
446 ui_test_utils::NavigateToURL(browser(), first_url); 447 ui_test_utils::NavigateToURL(browser(), first_url);
447 448
448 GURL second_url(embedded_test_server()->GetURL("/title2.html")); 449 GURL second_url(embedded_test_server()->GetURL("/title2.html"));
449 chrome::NavigateParams params(browser(), second_url, 450 chrome::NavigateParams params(browser(), second_url,
450 ui::PAGE_TRANSITION_LINK); 451 ui::PAGE_TRANSITION_LINK);
451 content::TestNavigationManager manager( 452 content::TestNavigationManager manager(
452 browser()->tab_strip_model()->GetActiveWebContents(), second_url); 453 browser()->tab_strip_model()->GetActiveWebContents(), second_url);
453 chrome::Navigate(&params); 454 chrome::Navigate(&params);
454 EXPECT_TRUE(manager.WaitForRequestStart()); 455 EXPECT_TRUE(manager.WaitForRequestStart());
455 456
456 { 457 {
457 content::TestNavigationManager reload_manager( 458 content::TestNavigationManager reload_manager(
458 browser()->tab_strip_model()->GetActiveWebContents(), first_url); 459 browser()->tab_strip_model()->GetActiveWebContents(), first_url);
459 EXPECT_TRUE(content::ExecuteScript( 460 EXPECT_TRUE(content::ExecuteScript(
460 browser()->tab_strip_model()->GetActiveWebContents(), 461 browser()->tab_strip_model()->GetActiveWebContents(),
461 "window.location.reload();")); 462 "window.location.reload();"));
462 } 463 }
463 464
464 manager.WaitForNavigationFinished(); 465 manager.WaitForNavigationFinished();
465 466
466 histogram_tester_.ExpectTotalCount( 467 EXPECT_TRUE(histogram_tester_
467 internal::kHistogramAbortClientRedirectBeforeCommit, 1); 468 .GetTotalCountsForPrefix("PageLoad.Experimental.AbortTiming.")
469 .empty());
468 } 470 }
469 471
470 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, 472 IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest,
471 FirstMeaningfulPaintRecorded) { 473 FirstMeaningfulPaintRecorded) {
472 ASSERT_TRUE(embedded_test_server()->Start()); 474 ASSERT_TRUE(embedded_test_server()->Start());
473 475
474 ui_test_utils::NavigateToURL(browser(), 476 ui_test_utils::NavigateToURL(browser(),
475 embedded_test_server()->GetURL("/title1.html")); 477 embedded_test_server()->GetURL("/title1.html"));
476 478
477 // Wait until the renderer finishes observing layouts. 479 // Wait until the renderer finishes observing layouts.
(...skipping 106 matching lines...) Expand 10 before | Expand all | Expand 10 after
584 ui_test_utils::NavigateToURL(browser(), embedded_test_server()->GetURL( 586 ui_test_utils::NavigateToURL(browser(), embedded_test_server()->GetURL(
585 "/page_load_metrics/large.html")); 587 "/page_load_metrics/large.html"));
586 NavigateToUntrackedUrl(); 588 NavigateToUntrackedUrl();
587 589
588 histogram_tester_.ExpectTotalCount(internal::kHistogramTotalBytes, 1); 590 histogram_tester_.ExpectTotalCount(internal::kHistogramTotalBytes, 1);
589 591
590 // Verify that there is a single sample recorded in the 10kB bucket (the size 592 // Verify that there is a single sample recorded in the 10kB bucket (the size
591 // of the main HTML response). 593 // of the main HTML response).
592 histogram_tester_.ExpectBucketCount(internal::kHistogramTotalBytes, 10, 1); 594 histogram_tester_.ExpectBucketCount(internal::kHistogramTotalBytes, 10, 1);
593 } 595 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698