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

Unified Diff: chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc

Issue 2380773002: Prevent tracking metrics for cases such as 204s and downloads. (Closed)
Patch Set: use existing test file Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc
diff --git a/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc
index 6077b6a2abcbb8bbb72cb6d448b736bac50c8b94..b3d4815415ba3f7c3e4e0bc77e334526d37150f2 100644
--- a/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc
+++ b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc
@@ -38,6 +38,10 @@ class PageLoadMetricsBrowserTest : public InProcessBrowserTest {
ui_test_utils::NavigateToURL(browser(), GURL(url::kAboutBlankURL));
}
+ bool NoPageLoadMetricsRecorded() {
+ return histogram_tester_.GetTotalCountsForPrefix("PageLoad.").empty();
+ }
+
base::HistogramTester histogram_tester_;
DISALLOW_COPY_AND_ASSIGN(PageLoadMetricsBrowserTest);
@@ -58,11 +62,7 @@ void FailAllNetworkTransactions(net::URLRequestContextGetter* getter) {
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NoNavigation) {
ASSERT_TRUE(embedded_test_server()->Start());
-
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0);
- histogram_tester_.ExpectTotalCount(internal::kHistogramDomContentLoaded, 0);
- histogram_tester_.ExpectTotalCount(internal::kHistogramLoad, 0);
- histogram_tester_.ExpectTotalCount(internal::kHistogramFirstLayout, 0);
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
}
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NewPage) {
@@ -80,6 +80,10 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NewPage) {
internal::kHistogramParseBlockedOnScriptLoad, 1);
histogram_tester_.ExpectTotalCount(
internal::kHistogramParseBlockedOnScriptExecution, 1);
+
+ // Verify that NoPageLoadMetricsRecorded returns false when PageLoad metrics
+ // have been recorded.
+ EXPECT_FALSE(NoPageLoadMetricsRecorded());
}
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, SamePageNavigation) {
@@ -118,10 +122,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NonHtmlMainResource) {
ui_test_utils::NavigateToURL(browser(),
embedded_test_server()->GetURL("/circle.svg"));
NavigateToUntrackedUrl();
-
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0);
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents,
- 0);
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
}
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NonHttpOrHttpsUrl) {
@@ -129,10 +130,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, NonHttpOrHttpsUrl) {
ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUIVersionURL));
NavigateToUntrackedUrl();
-
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0);
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents,
- 0);
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
}
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, HttpErrorPage) {
@@ -141,10 +139,7 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, HttpErrorPage) {
ui_test_utils::NavigateToURL(
browser(), embedded_test_server()->GetURL("/page_load_metrics/404.html"));
NavigateToUntrackedUrl();
-
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0);
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents,
- 0);
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
}
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ChromeErrorPage) {
@@ -162,10 +157,25 @@ IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, ChromeErrorPage) {
ui_test_utils::NavigateToURL(browser(),
embedded_test_server()->GetURL("/title1.html"));
NavigateToUntrackedUrl();
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
+}
- histogram_tester_.ExpectTotalCount(internal::kHistogramCommit, 0);
- histogram_tester_.ExpectTotalCount(page_load_metrics::internal::kErrorEvents,
- 0);
+IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, Ignore204Pages) {
+ ASSERT_TRUE(embedded_test_server()->Start());
+
+ ui_test_utils::NavigateToURL(browser(),
+ embedded_test_server()->GetURL("/page204.html"));
+ NavigateToUntrackedUrl();
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
+}
+
+IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, IgnoreDownloads) {
+ ASSERT_TRUE(embedded_test_server()->Start());
+
+ ui_test_utils::NavigateToURL(
+ browser(), embedded_test_server()->GetURL("/download-test3.gif"));
+ NavigateToUntrackedUrl();
+ EXPECT_TRUE(NoPageLoadMetricsRecorded());
}
IN_PROC_BROWSER_TEST_F(PageLoadMetricsBrowserTest, PreloadDocumentWrite) {

Powered by Google App Engine
This is Rietveld 408576698