| Index: tools/perf/page_sets/blink_memory_mobile.py
|
| diff --git a/tools/perf/page_sets/blink_memory_mobile.py b/tools/perf/page_sets/blink_memory_mobile.py
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3dded4af4de90d3b51da5f7204c006ced23680e5
|
| --- /dev/null
|
| +++ b/tools/perf/page_sets/blink_memory_mobile.py
|
| @@ -0,0 +1,116 @@
|
| +# Copyright 2015 The Chromium Authors. All rights reserved.
|
| +# Use of this source code is governed by a BSD-style license that can be
|
| +# found in the LICENSE file.
|
| +from telemetry.page import page as page_module
|
| +from telemetry.page import shared_page_state
|
| +from telemetry import story
|
| +
|
| +from page_sets import key_mobile_sites_pages
|
| +from page_sets.login_helpers import google_login
|
| +
|
| +
|
| +class BlinkMemoryMobilePage(page_module.Page):
|
| + def __init__(self, url, page_set, name):
|
| + super(BlinkMemoryMobilePage, self).__init__(
|
| + url=url, page_set=page_set, name=name,
|
| + shared_page_state_class=shared_page_state.SharedMobilePageState,
|
| + credentials_path='data/credentials.json')
|
| + self.arcive_data_file = 'data/blink_memory_mobile.json'
|
| +
|
| + def RunPageInteractions(self, action_runner):
|
| + action_runner.ScrollPage()
|
| +
|
| +
|
| +class TheVergePage(BlinkMemoryMobilePage):
|
| + def __init__(self, page_set):
|
| + super(TheVergePage, self).__init__(
|
| + # pylint: disable=C0301
|
| + url='http://www.theverge.com/2015/8/11/9133883/taylor-swift-spotify-discover-weekly-what-is-going-on',
|
| + page_set=page_set,
|
| + name='TheVerge')
|
| +
|
| + def RunPageInteractions(self, action_runner):
|
| + comment_link_selector = '.show_comments_link'
|
| + action_runner.WaitForElement(selector=comment_link_selector)
|
| + action_runner.ExecuteJavaScript(
|
| + 'window.location.hash = "comments"')
|
| + action_runner.TapElement(selector=comment_link_selector)
|
| + action_runner.WaitForJavaScriptCondition(
|
| + 'window.Chorus.Comments.collection.length > 0')
|
| +
|
| +
|
| +class GmailPage(BlinkMemoryMobilePage):
|
| + def __init__(self, page_set):
|
| + super(GmailPage, self).__init__(
|
| + url='https://mail.google.com/mail/',
|
| + page_set=page_set,
|
| + name='Gmail')
|
| +
|
| + def RunNavigateSteps(self, action_runner):
|
| + google_login.LoginGoogleAccount(action_runner, 'google',
|
| + self.credentials_path)
|
| + super(GmailPage, self).RunNavigateSteps(action_runner)
|
| + action_runner.WaitForNavigate()
|
| + action_runner.WaitForElement(selector='#nav')
|
| +
|
| +
|
| +class BlinkMemoryMobilePageSet(story.StorySet):
|
| + """Key mobile sites for Blink memory reduction."""
|
| +
|
| + def __init__(self):
|
| + super(BlinkMemoryMobilePageSet, self).__init__(
|
| + archive_data_file='data/blink_memory_mobile.json',
|
| + cloud_storage_bucket=story.PARTNER_BUCKET)
|
| +
|
| + # Why: High rate of Blink's memory consumption rate.
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + url='https://www.pinterest.com',
|
| + page_set=self,
|
| + name='Pinterest'))
|
| + self.AddStory(key_mobile_sites_pages.FacebookPage(self))
|
| + # TODO(bashi): Enable TheVergePage. http://crbug.com/522381
|
| + # self.AddStory(TheVergePage(self))
|
| +
|
| + # Why: High rate of Blink's memory comsumption rate on low-RAM devices.
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + url='http://en.m.wikipedia.org/wiki/Wikipedia',
|
| + page_set=self,
|
| + name='Wikipedia (1 tab) - delayed scroll start',))
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + url='http://www.reddit.com/r/programming/comments/1g96ve',
|
| + page_set=self,
|
| + name='Reddit'))
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + # pylint: disable=line-too-long
|
| + url='https://en.blog.wordpress.com/2012/09/04/freshly-pressed-editors-picks-for-august-2012/',
|
| + page_set=self,
|
| + name='Wordpress'))
|
| +
|
| + # Why: Renderer memory usage is high.
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + url='http://worldjournal.com/',
|
| + page_set=self,
|
| + name='Worldjournal'))
|
| +
|
| + # Why: Key products.
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + # pylint: disable=line-too-long
|
| + url='https://plus.google.com/app/basic/110031535020051778989/posts?source=apppromo',
|
| + page_set=self,
|
| + name='GooglePlus'))
|
| + self.AddStory(GmailPage(page_set=self))
|
| + self.AddStory(BlinkMemoryMobilePage(
|
| + # pylint: disable=line-too-long
|
| + url='http://googlewebmastercentral.blogspot.com/2015/04/rolling-out-mobile-friendly-update.html?m=1',
|
| + page_set=self,
|
| + name='Blogger'))
|
| +
|
| +class BlinkMemoryTestPageSet(story.StorySet):
|
| + """Key mobile sites for Blink memory reduction."""
|
| +
|
| + def __init__(self):
|
| + super(BlinkMemoryTestPageSet, self).__init__(
|
| + archive_data_file='data/blink_memory_test.json',
|
| + cloud_storage_bucket=story.PARTNER_BUCKET)
|
| +
|
| + self.AddStory(TheVergePage(self))
|
|
|