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

Unified Diff: chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc

Issue 2924673004: Add UKM metric tracking for various page load metric observers. (Closed)
Patch Set: update Created 3 years, 5 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/observers/document_write_page_load_metrics_observer_unittest.cc
diff --git a/chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc b/chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc
index c41596fa8ede593ef02951bc49d4d9e4090ad2b1..dd6a6d6c43b95f9e0ef415593fc36da54f500c92 100644
--- a/chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc
+++ b/chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer_unittest.cc
@@ -5,6 +5,7 @@
#include "chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer.h"
#include "base/memory/ptr_util.h"
+#include "base/metrics/metrics_hashes.h"
#include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_test_harness.h"
#include "chrome/test/base/testing_browser_process.h"
#include "third_party/WebKit/public/platform/WebLoadingBehaviorFlag.h"
@@ -30,6 +31,7 @@ class DocumentWritePageLoadMetricsObserverTest
TEST_F(DocumentWritePageLoadMetricsObserverTest, NoMetrics) {
AssertNoPreloadHistogramsLogged();
AssertNoBlockHistogramsLogged();
+ EXPECT_EQ(0ul, ukm_tester().entries_count());
}
TEST_F(DocumentWritePageLoadMetricsObserverTest, PossiblePreload) {
@@ -44,7 +46,7 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, PossiblePreload) {
page_load_metrics::mojom::PageLoadMetadata metadata;
metadata.behavior_flags |=
blink::WebLoadingBehaviorFlag::kWebLoadingBehaviorDocumentWriteEvaluator;
- NavigateAndCommit(GURL("https://www.google.com"));
+ NavigateAndCommit(GURL("https://www.google.com/"));
SimulateTimingAndMetadataUpdate(timing, metadata);
histogram_tester().ExpectTotalCount(
@@ -53,7 +55,7 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, PossiblePreload) {
internal::kHistogramDocWriteParseStartToFirstContentfulPaint,
contentful_paint.InMilliseconds(), 1);
- NavigateAndCommit(GURL("https://www.example.com"));
+ NavigateAndCommit(GURL("https://www.example.com/"));
histogram_tester().ExpectTotalCount(
internal::kHistogramDocWriteParseStartToFirstContentfulPaint, 1);
@@ -71,9 +73,9 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, NoPossiblePreload) {
PopulateRequiredTimingFields(&timing);
page_load_metrics::mojom::PageLoadMetadata metadata;
- NavigateAndCommit(GURL("https://www.google.com"));
+ NavigateAndCommit(GURL("https://www.google.com/"));
SimulateTimingAndMetadataUpdate(timing, metadata);
- NavigateAndCommit(GURL("https://www.example.com"));
+ NavigateAndCommit(GURL("https://www.example.com/"));
AssertNoPreloadHistogramsLogged();
}
@@ -84,12 +86,23 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, PossibleBlock) {
timing.navigation_start = base::Time::FromDoubleT(1);
timing.paint_timing->first_contentful_paint = contentful_paint;
timing.parse_timing->parse_start = base::TimeDelta::FromMilliseconds(1);
+ timing.parse_timing->parse_stop = base::TimeDelta::FromMilliseconds(100);
+ timing.parse_timing->parse_blocked_on_script_load_duration =
+ base::TimeDelta::FromMilliseconds(5);
+ timing.parse_timing
+ ->parse_blocked_on_script_load_from_document_write_duration =
+ base::TimeDelta::FromMilliseconds(5);
+ timing.parse_timing->parse_blocked_on_script_execution_duration =
+ base::TimeDelta::FromMilliseconds(3);
+ timing.parse_timing
+ ->parse_blocked_on_script_execution_from_document_write_duration =
+ base::TimeDelta::FromMilliseconds(3);
PopulateRequiredTimingFields(&timing);
page_load_metrics::mojom::PageLoadMetadata metadata;
metadata.behavior_flags |=
blink::WebLoadingBehaviorFlag::kWebLoadingBehaviorDocumentWriteBlock;
- NavigateAndCommit(GURL("https://www.google.com"));
+ NavigateAndCommit(GURL("https://www.google.com/"));
SimulateTimingAndMetadataUpdate(timing, metadata);
histogram_tester().ExpectTotalCount(internal::kHistogramDocWriteBlockCount,
@@ -100,7 +113,17 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, PossibleBlock) {
internal::kHistogramDocWriteBlockParseStartToFirstContentfulPaint,
contentful_paint.InMilliseconds(), 1);
- NavigateAndCommit(GURL("https://www.example.com"));
+ const ukm::UkmSource* source =
+ ukm_tester().GetSourceForUrl("https://www.google.com/");
+ EXPECT_TRUE(ukm_tester().HasEntry(*source, internal::kUkmDocWriteBlockName));
+ ukm_tester().ExpectMetric(*source, internal::kUkmDocWriteBlockName,
+ internal::kUkmParseBlockedOnScriptLoadDocumentWrite,
+ 5);
+ ukm_tester().ExpectMetric(
+ *source, internal::kUkmDocWriteBlockName,
+ internal::kUkmParseBlockedOnScriptExecutionDocumentWrite, 3);
+
+ NavigateAndCommit(GURL("https://www.example.com/"));
histogram_tester().ExpectTotalCount(
internal::kHistogramDocWriteBlockParseStartToFirstContentfulPaint, 1);
@@ -121,14 +144,14 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, PossibleBlockReload) {
page_load_metrics::mojom::PageLoadMetadata metadata;
metadata.behavior_flags |= blink::WebLoadingBehaviorFlag::
kWebLoadingBehaviorDocumentWriteBlockReload;
- NavigateAndCommit(GURL("https://www.google.com"));
+ NavigateAndCommit(GURL("https://www.google.com/"));
SimulateTimingAndMetadataUpdate(timing, metadata);
histogram_tester().ExpectTotalCount(
internal::kHistogramDocWriteBlockReloadCount, 1);
// Another reload.
- NavigateAndCommit(GURL("https://www.example.com"));
+ NavigateAndCommit(GURL("https://www.example.com/"));
SimulateTimingAndMetadataUpdate(timing, metadata);
histogram_tester().ExpectTotalCount(
@@ -143,6 +166,8 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, PossibleBlockReload) {
histogram_tester().ExpectTotalCount(internal::kHistogramDocWriteBlockCount,
0);
+
+ EXPECT_EQ(0ul, ukm_tester().entries_count());
}
TEST_F(DocumentWritePageLoadMetricsObserverTest, NoPossibleBlock) {
@@ -154,9 +179,9 @@ TEST_F(DocumentWritePageLoadMetricsObserverTest, NoPossibleBlock) {
PopulateRequiredTimingFields(&timing);
page_load_metrics::mojom::PageLoadMetadata metadata;
- NavigateAndCommit(GURL("https://www.google.com"));
+ NavigateAndCommit(GURL("https://www.google.com/"));
SimulateTimingAndMetadataUpdate(timing, metadata);
- NavigateAndCommit(GURL("https://www.example.com"));
+ NavigateAndCommit(GURL("https://www.example.com/"));
AssertNoBlockHistogramsLogged();
}

Powered by Google App Engine
This is Rietveld 408576698