Commit 08116757 authored by Juan Antonio Navarro Perez's avatar Juan Antonio Navarro Perez Committed by Commit Bot

[tools/perf] Fix blink_perf tests to find Chrome traces

These tests just want to know whether a Chrome trace has been recorded
or not.

The implementation prior to this CL used to verify whether a serialized
trace.html was recorded after finishing running the story; but this will
no longer be the case after serialization is handed over to results
processor.

Bug: 981349
Change-Id: I39dec39db349cdce6334d950b392fff0d66a001a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1903145
Commit-Queue: Mikhail Khokhlov <khokhlov@google.com>
Auto-Submit: Juan Antonio Navarro Pérez <perezju@chromium.org>
Reviewed-by: default avatarMikhail Khokhlov <khokhlov@google.com>
Cr-Commit-Position: refs/heads/master@{#713478}
parent 7f736f0c
...@@ -32,6 +32,10 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase): ...@@ -32,6 +32,10 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase):
self.blink_page_test = blink_perf._BlinkPerfMeasurement() self.blink_page_test = blink_perf._BlinkPerfMeasurement()
# pylint: enable=protected-access # pylint: enable=protected-access
def HasChromeTraces(self):
return any(name.startswith('trace/traceEvents/')
for name in self.test_result['outputArtifacts'])
@staticmethod @staticmethod
def CreateStorySetForTest(url): def CreateStorySetForTest(url):
story_set = story.StorySet( story_set = story.StorySet(
...@@ -46,7 +50,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase): ...@@ -46,7 +50,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase):
def testBlinkPerfTracingMetricsForMeasureTime(self): def testBlinkPerfTracingMetricsForMeasureTime(self):
measurements = self.RunPageTest( measurements = self.RunPageTest(
self.blink_page_test, 'file://append-child-measure-time.html') self.blink_page_test, 'file://append-child-measure-time.html')
self.assertIn('trace.html', self.test_result['outputArtifacts']) self.assertTrue(self.HasChromeTraces())
frame_view_layouts = measurements['LocalFrameView::layout']['samples'] frame_view_layouts = measurements['LocalFrameView::layout']['samples']
# append-child-measure-time.html specifies 5 iterationCount. # append-child-measure-time.html specifies 5 iterationCount.
...@@ -61,7 +65,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase): ...@@ -61,7 +65,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase):
def testBlinkPerfTracingMetricsForMeasureFrameTime(self): def testBlinkPerfTracingMetricsForMeasureFrameTime(self):
measurements = self.RunPageTest( measurements = self.RunPageTest(
self.blink_page_test, 'file://color-changes-measure-frame-time.html') self.blink_page_test, 'file://color-changes-measure-frame-time.html')
self.assertIn('trace.html', self.test_result['outputArtifacts']) self.assertTrue(self.HasChromeTraces())
frame_view_prepaints = measurements[ frame_view_prepaints = measurements[
'LocalFrameView::RunPrePaintLifecyclePhase']['samples'] 'LocalFrameView::RunPrePaintLifecyclePhase']['samples']
...@@ -79,7 +83,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase): ...@@ -79,7 +83,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase):
def testBlinkPerfTracingMetricsForMeasurePageLoadTime(self): def testBlinkPerfTracingMetricsForMeasurePageLoadTime(self):
measurements = self.RunPageTest( measurements = self.RunPageTest(
self.blink_page_test, 'file://simple-html-measure-page-load-time.html') self.blink_page_test, 'file://simple-html-measure-page-load-time.html')
self.assertIn('trace.html', self.test_result['outputArtifacts']) self.assertTrue(self.HasChromeTraces())
create_child_frame = measurements[ create_child_frame = measurements[
'WebLocalFrameImpl::createChildframe']['samples'] 'WebLocalFrameImpl::createChildframe']['samples']
...@@ -97,7 +101,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase): ...@@ -97,7 +101,7 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase):
def testBlinkPerfTracingMetricsForMeasureAsync(self): def testBlinkPerfTracingMetricsForMeasureAsync(self):
measurements = self.RunPageTest( measurements = self.RunPageTest(
self.blink_page_test, 'file://simple-blob-measure-async.html') self.blink_page_test, 'file://simple-blob-measure-async.html')
self.assertIn('trace.html', self.test_result['outputArtifacts']) self.assertTrue(self.HasChromeTraces())
blob_requests = measurements['BlobRequest']['samples'] blob_requests = measurements['BlobRequest']['samples']
blob_readers = measurements['BlobReader']['samples'] blob_readers = measurements['BlobReader']['samples']
...@@ -124,12 +128,12 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase): ...@@ -124,12 +128,12 @@ class BlinkPerfTest(legacy_page_test_case.LegacyPageTestCase):
def testBlinkPerfLifecycleMethods(self): def testBlinkPerfLifecycleMethods(self):
self.RunPageTest(self.blink_page_test, 'file://lifecycle-methods.html') self.RunPageTest(self.blink_page_test, 'file://lifecycle-methods.html')
self.assertNotIn('trace.html', self.test_result['outputArtifacts']) self.assertFalse(self.HasChromeTraces())
def testExtraChromeCategories(self): def testExtraChromeCategories(self):
self.options.extra_chrome_categories = 'cc,blink' self.options.extra_chrome_categories = 'cc,blink'
self.RunPageTest(self.blink_page_test, 'file://lifecycle-methods.html') self.RunPageTest(self.blink_page_test, 'file://lifecycle-methods.html')
self.assertIn('trace.html', self.test_result['outputArtifacts']) self.assertTrue(self.HasChromeTraces())
# pylint: disable=protected-access # pylint: disable=protected-access
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment