Commit 72b0661c authored by ashleymarie's avatar ashleymarie Committed by Commit Bot

Deleting unused story sets

BUG=chromium:720002

Review-Url: https://codereview.chromium.org/2933173002
Cr-Commit-Position: refs/heads/master@{#478770}
parent 927ddf0c
# Copyright 2014 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.
import json
import os
from telemetry.page import page as page_module
from telemetry.page import shared_page_state
from telemetry import story
__location__ = os.path.realpath(
os.path.join(os.getcwd(), os.path.dirname(__file__)))
# Generated on 2013-09-03 13:59:53.459117 by rmistry using
# create_page_set.py.
_TOP_10000_ALEXA_FILE = os.path.join(__location__, 'alexa1-10000-urls.json')
class Alexa1To10000Page(page_module.Page):
def __init__(self, url, page_set):
super(Alexa1To10000Page, self).__init__(
url=url, page_set=page_set,
shared_page_state_class=shared_page_state.SharedDesktopPageState)
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
class Alexa1To10000PageSet(story.StorySet):
""" Top 1-10000 Alexa global.
Generated on 2013-09-03 13:59:53.459117 by rmistry using
create_page_set.py.
"""
def __init__(self):
super(Alexa1To10000PageSet, self).__init__()
with open(_TOP_10000_ALEXA_FILE) as f:
urls_list = json.load(f)
for url in urls_list:
self.AddStory(Alexa1To10000Page(url, self))
# Copyright 2014 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
class AndroidAcceptancePage(page_module.Page):
def __init__(self, url, page_set, name=''):
super(AndroidAcceptancePage, self).__init__(
url=url, page_set=page_set, name=name,
# Android acceptance uses desktop.
shared_page_state_class=shared_page_state.SharedDesktopPageState,
credentials_path = 'data/credentials.json')
self.archive_data_file = 'data/android_acceptance.json'
def RunPageInteractions(self, action_runner):
action_runner.Wait(40)
class AndroidAcceptancePageSet(story.StorySet):
""" Pages used in android acceptance testing. """
def __init__(self):
super(AndroidAcceptancePageSet, self).__init__(
archive_data_file='data/android_acceptance.json',
cloud_storage_bucket=story.PARTNER_BUCKET,
verify_names=True)
urls_list = [
'http://www.amazon.com',
'http://www.cnn.com',
'http://www.msn.com',
]
for url in urls_list:
self.AddStory(AndroidAcceptancePage(url, self, name=url))
......@@ -3,7 +3,6 @@
# found in the LICENSE file.
from telemetry.page import page as page_module
from telemetry import story
from page_sets.startup_pages import BrowserStartupSharedState
class BlankPage(page_module.Page):
......@@ -30,30 +29,3 @@ class BlankPageSet(story.StorySet):
super(BlankPageSet, self).__init__(verify_names=True)
self.AddStory(BlankPage('file://blank_page/blank_page.html',
self, 'blank_page.html'))
class BlankPageTBM(page_module.Page):
def __init__(self, url, page_set):
super(BlankPageTBM, self).__init__(
url, page_set=page_set,
shared_page_state_class=BrowserStartupSharedState)
def RunPageInteractions(self, action_runner):
action_runner.ExecuteJavaScript(
"""
this.hasRunRAF = 0;
requestAnimationFrame(function() {
this.hasRunRAF = 1;
});
"""
)
action_runner.WaitForJavaScriptCondition("this.hasRunRAF == 1")
class BlankPageSetTBM(story.StorySet):
"""A single blank page."""
def __init__(self):
super(BlankPageSetTBM, self).__init__()
self.AddStory(BlankPageTBM('file://blank_page/blank_page.html', self))
# 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.
import logging
from telemetry.page import shared_page_state
class DiagonalScrollingSupportedSharedState(
shared_page_state.SharedDesktopPageState):
def CanRunOnBrowser(self, browser_info, _):
if not browser_info.HasDiagonalScrollingSupport():
logging.warning('Browser does not support synthetic diagonal scrolling,'
' skipping test')
return False
return True
......@@ -17,19 +17,6 @@ class DummyPage(page_module.Page):
assert action_runner.EvaluateJavaScript('1 + window.__dummy_value') == 2
class BrokenDummyPage(page_module.Page):
def __init__(self, page_set):
super(BrokenDummyPage, self).__init__(
url='file://dummy_pages/dummy_page.html',
name='Broken dummy page',
page_set=page_set)
def RunPageInteractions(self, action_runner):
# The call below should raise an AssertionError
assert action_runner.EvaluateJavaScript('1 + window.__dummy_value') == 3
class DummyStorySet(story.StorySet):
def __init__(self):
......
......@@ -41,20 +41,3 @@ class GmailPage(GooglePages):
action_runner.WaitForJavaScriptCondition(
'window.gmonkey !== undefined &&'
'document.getElementById("gb") !== null')
class GoogleDocPage(GooglePages):
def __init__(self, page_set,
shared_page_state_class=shared_page_state.SharedPageState):
super(GoogleDocPage, self).__init__(
# pylint: disable=line-too-long
url='https://docs.google.com/document/d/1X-IKNjtEnx-WW5JIKRLsyhz5sbsat3mfTpAPUSX3_s4/view',
page_set=page_set,
shared_page_state_class=shared_page_state_class)
def RunNavigateSteps(self, action_runner):
google_login.LoginGoogleAccount(action_runner, 'google',
self.credentials_path)
super(GoogleDocPage, self).RunNavigateSteps(action_runner)
action_runner.Wait(2)
action_runner.WaitForJavaScriptCondition(
'document.getElementsByClassName("kix-appview-editor").length')
This diff is collapsed.
......@@ -135,25 +135,6 @@ class YahooAnswersPage(KeyMobileSitesPage):
action_runner.ClickElement(text='Other Answers (1 - 20 of 149)')
class GmailPage(KeyMobileSitesPage):
""" Why: productivity, top google properties """
def __init__(self, page_set):
super(GmailPage, self).__init__(
url='https://mail.google.com/mail/',
page_set=page_set)
self.credentials = 'google'
def RunNavigateSteps(self, action_runner):
super(GmailPage, self).RunNavigateSteps(action_runner)
action_runner.WaitForJavaScriptCondition(
'document.getElementById("og_user_warning") !== null')
action_runner.WaitForJavaScriptCondition(
'document.getElementById("og_user_warning") === null')
class GroupClonedPage(KeyMobileSitesPage):
""" Why: crbug.com/172906 """
......
......@@ -69,17 +69,6 @@ class WowwikiSmoothPage(KeyMobileSitesSmoothPage):
super(WowwikiSmoothPage, self).RunNavigateSteps(action_runner)
class GmailSmoothPage(key_mobile_sites_pages.GmailPage):
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollElement(element_function=(
'document.getElementById("views").childNodes[1].firstChild'))
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollElement(element_function=(
'document.getElementById("views").childNodes[1].firstChild'))
class GroupClonedSmoothPage(key_mobile_sites_pages.GroupClonedPage):
def RunPageInteractions(self, action_runner):
......
# Copyright 2014 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
class KeySearchMobilePage(page_module.Page):
def __init__(self, url, page_set):
super(KeySearchMobilePage, self).__init__(
url=url, page_set=page_set, credentials_path = 'data/credentials.json',
shared_page_state_class=shared_page_state.SharedMobilePageState)
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
class KeySearchMobilePageSet(story.StorySet):
""" Key mobile search queries on google """
def __init__(self):
super(KeySearchMobilePageSet, self).__init__(
archive_data_file='data/key_search_mobile.json',
cloud_storage_bucket=story.PUBLIC_BUCKET)
urls_list = [
# Why: An empty page should be as snappy as possible
'http://www.google.com/',
# Why: A reasonable search term with no images or ads usually
'https://www.google.com/search?q=science',
# Why: A reasonable search term with images but no ads usually
'http://www.google.com/search?q=orange',
# Why: An address search
# pylint: disable=line-too-long
'https://www.google.com/search?q=1600+Amphitheatre+Pkwy%2C+Mountain+View%2C+CA',
# Why: A search for a known actor
'http://www.google.com/search?q=tom+hanks',
# Why: A search for weather
'https://www.google.com/search?q=weather+94110',
# Why: A search for a stock
'http://www.google.com/search?q=goog',
# Why: Charts
'https://www.google.com/search?q=population+of+california',
# Why: Flights
'http://www.google.com/search?q=sfo+jfk+flights',
# Why: Movie showtimes
'https://www.google.com/search?q=movies+94110',
# Why: A tip calculator
'http://www.google.com/search?q=tip+on+100+bill',
# Why: Time
'https://www.google.com/search?q=time+in+san+francisco',
# Why: Definitions
'http://www.google.com/search?q=define+define',
# Why: Local results
'https://www.google.com/search?q=burritos+94110',
# Why: Graph
'http://www.google.com/search?q=x^3'
]
for url in urls_list:
self.AddStory(KeySearchMobilePage(url, self))
......@@ -78,11 +78,3 @@ class MemoryTop10Mobile(story.StorySet):
name = re.sub(r'\W+', '_', url)
self.AddStory(ForegroundPage(self, name, url))
self.AddStory(BackgroundPage(self, 'after_' + name))
class MemoryTop10MobileRealistic(MemoryTop10Mobile):
"""Top 10 mobile user story in realistic mode.
This means, in particular, neither forced GCs nor clearing caches.
"""
DETERMINISTIC_MODE = False
# Copyright 2016 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 page_sets.login_helpers import facebook_login
from telemetry.page import page as page_module
class MobileFacebookPage(page_module.Page):
def __init__(self, url, page_set, shared_page_state_class, name='facebook'):
super(MobileFacebookPage, self).__init__(
url=url, page_set=page_set, name=name,
credentials_path='data/credentials.json',
shared_page_state_class=shared_page_state_class)
def RunNavigateSteps(self, action_runner):
facebook_login.LoginWithMobileSite(action_runner, 'facebook3',
self.credentials_path)
super(MobileFacebookPage, self).RunNavigateSteps(action_runner)
# Copyright 2014 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
class MobileMemoryPage(page_module.Page):
def __init__(self, url, page_set):
super(MobileMemoryPage, self).__init__(
url=url, page_set=page_set, credentials_path = 'data/credentials.json',
shared_page_state_class=shared_page_state.SharedMobilePageState)
self.archive_data_file = 'data/mobile_memory.json'
class GmailPage(MobileMemoryPage):
def __init__(self, page_set):
super(GmailPage, self).__init__(
url='https://mail.google.com/mail/mu',
page_set=page_set)
self.reload_and_gc = [{'action': 'reload'},
{'action': 'wait',
'seconds': 15},
{'action': 'js_collect_garbage'}]
self.credentials = 'google'
def ReloadAndGc(self, action_runner):
action_runner.ReloadPage()
action_runner.Wait(15)
action_runner.ForceGarbageCollection()
def RunPageInteractions(self, action_runner):
for _ in xrange(3):
self.ReloadAndGc(action_runner)
class GoogleSearchPage(MobileMemoryPage):
""" Why: Tests usage of discardable memory """
def __init__(self, page_set):
super(GoogleSearchPage, self).__init__(
url='https://www.google.com/search?site=&tbm=isch&q=google',
page_set=page_set)
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
action_runner.Wait(3)
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
action_runner.Wait(3)
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
action_runner.Wait(3)
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
action_runner.WaitForJavaScriptCondition(
'document.getElementById("rg_s").childElementCount > 300')
class ScrollPage(MobileMemoryPage):
def __init__(self, url, page_set):
super(ScrollPage, self).__init__(url=url, page_set=page_set)
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
class MobileMemoryPageSet(story.StorySet):
""" Mobile sites with interesting memory characteristics """
def __init__(self):
super(MobileMemoryPageSet, self).__init__(
archive_data_file='data/mobile_memory.json',
cloud_storage_bucket=story.PARTNER_BUCKET)
self.AddStory(GmailPage(self))
self.AddStory(GoogleSearchPage(self))
urls_list = [
# Why: Renderer process memory bloat
'http://techcrunch.com',
# pylint: disable=line-too-long
'http://techcrunch.com/2014/02/17/pixel-brings-brings-old-school-video-game-art-to-life-in-your-home/',
'http://techcrunch.com/2014/02/15/kickstarter-coins-2/',
'http://techcrunch.com/2014/02/15/was-y-combinator-worth-it/',
]
for url in urls_list:
self.AddStory(ScrollPage(url, self))
# Copyright 2014 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 import story
class AlexaUsPage(page_module.Page):
def __init__(self, url, page_set):
super(AlexaUsPage, self).__init__(url=url, page_set=page_set)
class AlexaUsPageSet(story.StorySet):
""" Alexa US page_cycler benchmark """
def __init__(self):
super(AlexaUsPageSet, self).__init__(
# pylint: disable=line-too-long
serving_dirs=set(['../../../../data/page_cycler/alexa_us']))
urls_list = [
# pylint: disable=line-too-long
'file://../../../../data/page_cycler/alexa_us/accountservices.passport.net/',
'file://../../../../data/page_cycler/alexa_us/sfbay.craigslist.org/',
'file://../../../../data/page_cycler/alexa_us/www.amazon.com/',
'file://../../../../data/page_cycler/alexa_us/www.aol.com/',
'file://../../../../data/page_cycler/alexa_us/www.bbc.co.uk/',
'file://../../../../data/page_cycler/alexa_us/www.blogger.com/',
'file://../../../../data/page_cycler/alexa_us/www.cnn.com/',
'file://../../../../data/page_cycler/alexa_us/www.ebay.com/',
'file://../../../../data/page_cycler/alexa_us/www.flickr.com/',
'file://../../../../data/page_cycler/alexa_us/www.friendster.com/',
'file://../../../../data/page_cycler/alexa_us/www.go.com/',
'file://../../../../data/page_cycler/alexa_us/www.google.com/',
'file://../../../../data/page_cycler/alexa_us/www.imdb.com/',
'file://../../../../data/page_cycler/alexa_us/www.megaupload.com/',
'file://../../../../data/page_cycler/alexa_us/www.msn.com/',
'file://../../../../data/page_cycler/alexa_us/www.myspace.com/',
'file://../../../../data/page_cycler/alexa_us/www.orkut.com/',
'file://../../../../data/page_cycler/alexa_us/www.wikipedia.org/',
'file://../../../../data/page_cycler/alexa_us/www.xanga.com/',
'file://../../../../data/page_cycler/alexa_us/www.youtube.com/'
]
for url in urls_list:
self.AddStory(AlexaUsPage(url, self))
# Copyright 2014 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 import story
class BloatPage(page_module.Page):
def __init__(self, url, page_set):
super(BloatPage, self).__init__(url=url, page_set=page_set)
class BloatPageSet(story.StorySet):
""" Bloat page_cycler benchmark """
def __init__(self):
super(BloatPageSet, self).__init__(
# pylint: disable=line-too-long
serving_dirs=set(['../../../../data/page_cycler/bloat']),
cloud_storage_bucket=story.PUBLIC_BUCKET)
self.AddStory(BloatPage(
'file://../../../../data/page_cycler/bloat/gmail_load_cleardot/',
self))
# Copyright 2014 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 import story
class DomPage(page_module.Page):
def __init__(self, url, page_set):
super(DomPage, self).__init__(url=url, page_set=page_set)
class DomPageSet(story.StorySet):
""" DOM page_cycler benchmark """
def __init__(self):
super(DomPageSet, self).__init__(
# pylint: disable=line-too-long
serving_dirs=set(['../../../../data/page_cycler/dom']))
urls_list = [
'file://../../../../data/page_cycler/dom/HTMLDocument_write/',
'file://../../../../data/page_cycler/dom/Document_getElementById/',
'file://../../../../data/page_cycler/dom/DOMWindow_document/',
'file://../../../../data/page_cycler/dom/DOMWindow_window/',
'file://../../../../data/page_cycler/dom/Element_getAttribute/',
'file://../../../../data/page_cycler/dom/HTMLCollection_length/',
'file://../../../../data/page_cycler/dom/HTMLElement_className/',
'file://../../../../data/page_cycler/dom/HTMLElement_id/',
'file://../../../../data/page_cycler/dom/NodeList_length/'
]
for url in urls_list:
self.AddStory(DomPage(url, self))
# Copyright 2014 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 import story
class Intl1Page(page_module.Page):
def __init__(self, url, page_set):
super(Intl1Page, self).__init__(url=url, page_set=page_set)
class Intl1PageSet(story.StorySet):
""" Intl1 page_cycler benchmark """
def __init__(self):
super(Intl1PageSet, self).__init__(
# pylint: disable=line-too-long
serving_dirs=set(['../../../../data/page_cycler/intl1']))
urls_list = [
'file://../../../../data/page_cycler/intl1/126.com/',
'file://../../../../data/page_cycler/intl1/2ch.net/',
'file://../../../../data/page_cycler/intl1/6park.com/',
'file://../../../../data/page_cycler/intl1/affili.net/',
'file://../../../../data/page_cycler/intl1/allegro.pl/',
'file://../../../../data/page_cycler/intl1/apeha.ru/',
'file://../../../../data/page_cycler/intl1/baidu.com/',
'file://../../../../data/page_cycler/intl1/bbs.wefong.com/',
'file://../../../../data/page_cycler/intl1/blog.skyrock.com/',
'file://../../../../data/page_cycler/intl1/cmfu.com/',
'file://../../../../data/page_cycler/intl1/cn.yahoo.com/',
'file://../../../../data/page_cycler/intl1/contra.gr/',
'file://../../../../data/page_cycler/intl1/dtiblog.com/',
'file://../../../../data/page_cycler/intl1/el.wikipedia.org/',
'file://../../../../data/page_cycler/intl1/elmundo.es/',
'file://../../../../data/page_cycler/intl1/ettoday.com/',
'file://../../../../data/page_cycler/intl1/exblog.jp/',
'file://../../../../data/page_cycler/intl1/excite.co.jp/',
'file://../../../../data/page_cycler/intl1/fc2.com/',
'file://../../../../data/page_cycler/intl1/fora.pl/',
'file://../../../../data/page_cycler/intl1/free.fr/',
'file://../../../../data/page_cycler/intl1/golem.de/',
'file://../../../../data/page_cycler/intl1/goo.ne.jp/',
'file://../../../../data/page_cycler/intl1/haberturk.com/',
'file://../../../../data/page_cycler/intl1/hatena.ne.jp/',
'file://../../../../data/page_cycler/intl1/home.altervista.org/',
'file://../../../../data/page_cycler/intl1/hurriyet.com.tr/',
'file://../../../../data/page_cycler/intl1/jugem.jp/',
'file://../../../../data/page_cycler/intl1/kakaku.com/',
'file://../../../../data/page_cycler/intl1/mixi.jp/',
'file://../../../../data/page_cycler/intl1/naftemporiki.gr/',
'file://../../../../data/page_cycler/intl1/narod.yandex.ru/',
'file://../../../../data/page_cycler/intl1/news.163.com/',
'file://../../../../data/page_cycler/intl1/partyflock.nl/',
'file://../../../../data/page_cycler/intl1/pchome.com.tw/',
'file://../../../../data/page_cycler/intl1/phoenixtv.com/',
'file://../../../../data/page_cycler/intl1/photofile.ru/',
'file://../../../../data/page_cycler/intl1/pl.wikipedia.org/',
'file://../../../../data/page_cycler/intl1/ricardo.ch/',
'file://../../../../data/page_cycler/intl1/ru.wikipedia.org/',
'file://../../../../data/page_cycler/intl1/ruten.com.tw/',
'file://../../../../data/page_cycler/intl1/sport24.gr/',
'file://../../../../data/page_cycler/intl1/terra.es/',
'file://../../../../data/page_cycler/intl1/udn.com/',
'file://../../../../data/page_cycler/intl1/uwants.com/',
'file://../../../../data/page_cycler/intl1/voila.fr/',
'file://../../../../data/page_cycler/intl1/www.alice.it/',
'file://../../../../data/page_cycler/intl1/www.amazon.co.jp/',
'file://../../../../data/page_cycler/intl1/www.auction.co.kr/',
'file://../../../../data/page_cycler/intl1/www.chinaren.com/',
'file://../../../../data/page_cycler/intl1/www.chosun.com/',
'file://../../../../data/page_cycler/intl1/www.danawa.com/',
'file://../../../../data/page_cycler/intl1/www.daum.net/',
'file://../../../../data/page_cycler/intl1/www.dcinside.com/',
'file://../../../../data/page_cycler/intl1/www.eastmoney.com/',
'file://../../../../data/page_cycler/intl1/zol.com.cn/'
]
for url in urls_list:
self.AddStory(Intl1Page(url, self))
# Copyright 2014 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 import story
class Intl2Page(page_module.Page):
def __init__(self, url, page_set):
super(Intl2Page, self).__init__(url=url, page_set=page_set)
# pylint: disable=line-too-long
class Intl2PageSet(story.StorySet):
"""
Description: Intl2 page_cycler benchmark
"""
def __init__(self):
super(Intl2PageSet, self).__init__(
# pylint: disable=line-too-long
serving_dirs=set(['../../../../data/page_cycler/intl2']))
urls_list = [
'file://../../../../data/page_cycler/intl2/arabicnews.google.com/',
'file://../../../../data/page_cycler/intl2/bn.wikipedia.org/',
'file://../../../../data/page_cycler/intl2/exteen.com/',
'file://../../../../data/page_cycler/intl2/farsnews.com/',
'file://../../../../data/page_cycler/intl2/hindi.webdunia.com/',
'file://../../../../data/page_cycler/intl2/in.telugu.yahoo.com/',
'file://../../../../data/page_cycler/intl2/isna.ir/',
'file://../../../../data/page_cycler/intl2/kapook.com/',
'file://../../../../data/page_cycler/intl2/kooora.com/',
'file://../../../../data/page_cycler/intl2/manager.co.th/',
'file://../../../../data/page_cycler/intl2/masrawy.com/',
'file://../../../../data/page_cycler/intl2/ml.wikipedia.org/',
'file://../../../../data/page_cycler/intl2/msn.co.il/',
'file://../../../../data/page_cycler/intl2/news.bbc.co.uk/',
'file://../../../../data/page_cycler/intl2/news.google.com/',
'file://../../../../data/page_cycler/intl2/sh3bwah.com/',
'file://../../../../data/page_cycler/intl2/sgkalesh.blogspot.com/',
'file://../../../../data/page_cycler/intl2/tapuz.co.il/',
'file://../../../../data/page_cycler/intl2/thaimisc.com/',
'file://../../../../data/page_cycler/intl2/vietnamnet.vn/',
'file://../../../../data/page_cycler/intl2/vnexpress.net/',
'file://../../../../data/page_cycler/intl2/walla.co.il/',
'file://../../../../data/page_cycler/intl2/www.aljayyash.net/',
'file://../../../../data/page_cycler/intl2/www.bbc.co.uk/',
'file://../../../../data/page_cycler/intl2/www.google.com.sa/',
'file://../../../../data/page_cycler/intl2/www.islamweb.net/',
'file://../../../../data/page_cycler/intl2/www.mthai.com/',
'file://../../../../data/page_cycler/intl2/www.startimes2.com/',
'file://../../../../data/page_cycler/intl2/www.jagran.com/',
'file://../../../../data/page_cycler/intl2/ynet.co.il/'
]
for url in urls_list:
self.AddStory(Intl2Page(url, self))
# Copyright 2014 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 page_sets import fling_gesture_supported_shared_state
from telemetry.page import page as page_module
from telemetry import story
class SimpleFlingPage(page_module.Page):
def __init__(self, url, page_set):
super(SimpleFlingPage, self).__init__(
url=url,
page_set=page_set,
credentials_path='data/credentials.json',
shared_page_state_class=(fling_gesture_supported_shared_state\
.FlingGestureSupportedSharedState))
self.archive_data_file = 'data/simple_mobile_sites.json'
def RunNavigateSteps(self, action_runner):
super(SimpleFlingPage, self).RunNavigateSteps(action_runner)
# TODO(epenner): Remove this wait (http://crbug.com/366933)
action_runner.Wait(5)
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('FlingAction'):
# Swiping up induces a downward fling, and 500 pixels of touch scrolling
# runway ensures consistent fling velocities.
action_runner.SwipePage(direction='up',
distance='500',
speed_in_pixels_per_second=5000)
class SimpleMobileSitesFlingPageSet(story.StorySet):
""" Simple mobile sites """
def __init__(self):
super(SimpleMobileSitesFlingPageSet, self).__init__(
archive_data_file='data/simple_mobile_sites.json',
cloud_storage_bucket=story.PUBLIC_BUCKET)
fling_page_list = [
# Why: Scrolls moderately complex pages (up to 60 layers)
'http://www.ebay.co.uk/',
'https://www.flickr.com/',
'http://www.apple.com/mac/',
'http://www.nyc.gov',
'http://m.nytimes.com/'
]
for url in fling_page_list:
self.AddStory(SimpleFlingPage(url, self))
# Copyright 2014 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 import story
class StartupPagesRecordPage(page_module.Page):
def __init__(self, url, page_set):
super(StartupPagesRecordPage, self).__init__(url=url, page_set=page_set)
self.archive_data_file = 'data/startup_pages.json'
class StartupPagesRecordPageSet(story.StorySet):
""" Pages to record data for testing starting Chrome with a URL.
We can't use startup_pages.json with record_wpr, since record_wpr
requires a default navigate step, which we don't want for startup
testing; but we do want to record the pages it uses. Also, record_wpr
fails on about:blank, which we want to include in startup testing.
"""
def __init__(self):
super(StartupPagesRecordPageSet, self).__init__(
archive_data_file='data/startup_pages.json')
urls_list = [
# Why: typical page
'http://bbc.co.uk',
# TODO(charliea): Reenable this when kabook.com is no longer crashing.
# crbug.com/667470
# Why: Horribly complex page - stress test!
# 'http://kapook.com',
]
for url in urls_list:
self.AddStory(StartupPagesRecordPage(url, self))
......@@ -128,27 +128,3 @@ class Top10PageSet(story.StorySet):
# #20 Alexa
self.AddStory(SimplePage('http://www.ask.com/', self))
# TODO(skyostil): Replace this with Top10PageSet once the power metric can deal
# with pages that don't become quiescent. See crbug.com/662381.
class Top10QuiescentPageSet(story.StorySet):
"""10 pages that reach network quiesence chosen from Alexa top sites"""
def __init__(self):
super(Top10QuiescentPageSet, self).__init__(
archive_data_file='data/top_10.json',
cloud_storage_bucket=story.PARTNER_BUCKET)
self.AddStory(Google(self))
# TODO(dominikg): fix crbug.com/386152
#self.AddStory(Gmail(self))
self.AddStory(GoogleCalendar(self))
self.AddStory(Youtube(self))
# crbug.com/662381.
#self.AddStory(Facebook(self))
self.AddStory(SimplePage('http://en.wikipedia.org/wiki/Wikipedia',
self, name='Wikipedia'))
self.AddStory(SimplePage('http://www.amazon.com', self))
self.AddStory(SimplePage('http://www.yahoo.com/', self))
self.AddStory(SimplePage('http://www.bing.com/', self))
self.AddStory(SimplePage('http://www.ask.com/', self))
......@@ -86,12 +86,3 @@ class Top10MobilePageSet(_Top10MobilePageSet):
def __init__(self, run_no_page_interactions=False, cache_temperatures=None):
super(Top10MobilePageSet, self).__init__(run_no_page_interactions,
cache_temperatures=cache_temperatures)
class Top10MobileMemoryPageSet(_Top10MobilePageSet):
""" Top 10 mobile sites for measuring memory"""
def __init__(self):
super(Top10MobileMemoryPageSet, self).__init__(
run_no_page_interactions=False, collect_memory_dumps=True)
......@@ -175,9 +175,3 @@ class Top25SmoothPageSet(story.StorySet):
for url in other_urls:
self.AddStory(TopSmoothPage(url, self))
class V8Top25SmoothPageSet(Top25SmoothPageSet):
def __init__(self):
# Disabled for V8 because of crbug.com/507836, crbug.com/527425
super(V8Top25SmoothPageSet, self).__init__(techcrunch=False)
This diff is collapsed.
# Copyright 2014 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
from telemetry import story
TOP_2013_URLS = [
'http://www.facebook.com/barackobama',
'https://www.google.com/search?q=barack%20obama',
'http://youtube.com',
'http://yahoo.com',
'http://www.baidu.com/s?wd=barack+obama',
'http://en.wikipedia.org/wiki/Wikipedia',
'http://qq.com',
'http://www.amazon.com/Kindle-Fire-Amazon-Tablet/dp/B0051VVOB2',
'http://googleblog.blogspot.com/',
'http://taobao.com',
'http://www.linkedin.com/in/linustorvalds',
'http://yahoo.co.jp',
'http://sina.com.cn',
'http://msn.com',
'http://yandex.ru/yandsearch?text=barack+obama',
'http://translation.babylon.com/',
'http://www.bing.com/search?q=barack+obama',
'http://wordpress.org/news/',
'http://www.ebay.com/sch/i.html?_nkw=antiques',
'http://163.com',
'http://www.soso.com/q?w=barack+obama',
'http://www.microsoft.com/en-us/default.aspx',
'http://go.mail.ru/search?mailru=1&mg=1&q=barack+obama',
'http://vk.com/id118712387',
'http://staff.tumblr.com/',
'http://sohu.com',
'http://sfbay.craigslist.org/mis/',
'http://www.ask.com/web?q=barack+obama&search=&qsrc=0&o=0&l=dir',
'http://www.apple.com/ipodtouch/',
'http://blog.pinterest.com/',
'http://pinterest.com/backdrophome/',
'http://paypal.com',
'http://bbc.co.uk',
'http://www.avg.com/us-en/avg-premium-security',
'http://googlesystem.blogspot.com/',
'http://tudou.com',
'http://blog.fc2.com/en/',
'http://imdb.com',
'http://youku.com',
'http://www.flickr.com/photos/thomashawk/',
'http://www.flickr.com/photos/thomashawk/sets/72157600284219965/detail/',
# pylint: disable=line-too-long
'http://search.yahoo.com/search?ei=UTF-8&trackingType=go_search_home&p=barack+obama&fr=hsusgo1&sa.x=0&sa.y=0',
'http://www.conduit.com/',
'http://ifeng.com',
'http://tmall.com',
'http://hao123.com',
'http://aol.com',
'http://zedo.com',
# pylint: disable=line-too-long
'http://search.mywebsearch.com/mywebsearch/GGmain.jhtml?searchfor=barack+obama',
'http://cnn.com',
'http://portal.ebay.de/deutschland-schraubt-angebote',
'http://www.adobe.com/products/photoshopfamily.html?promoid=JOLIW',
'http://global.rakuten.com/us/',
# pylint: disable=line-too-long
'http://laundry.about.com/od/kidsandlaundry/f/How-Do-I-Wash-A-Backpack.htm',
'http://thepiratebay.se/search/barack%20obama/0/99/0',
'http://360buy.com',
'http://huffingtonpost.com',
'http://alibaba.com',
'http://chinaz.com',
'http://www.sogou.com/web?query=barack+obama',
# pylint: disable=line-too-long
('http://www.amazon.de/gp/product/B0051QVF7A/ref=amb_link_170625867_1/'
'275-4711375-4099801?ie=UTF8&nav_sdd=aps&pf_rd_m=A3JWKAKR8XB7XF&'
'pf_rd_s=center-1&pf_rd_r=1C0XDBPB12WHDM63V11R&pf_rd_t=101&pf_rd_p'
'=320475427&pf_rd_i=301128'),
'http://google.pl',
'http://mediafire.com',
'http://espn.go.com',
'http://uol.com.br',
'http://www.godaddy.com/products/secure-hosting.aspx?ci=72738',
'http://imgur.com/gallery/b90ZE',
'http://home.alipay.com/bank/paymentKJ.htm',
'http://amazon.co.jp',
# pylint: disable=line-too-long
'http://stackoverflow.com/questions/11227809/why-is-processing-a-sorted-array-faster-than-an-unsorted-array',
'http://www.google.com/doubleclick/',
'http://search.4shared.com/q/CCAD/1/barack%20obama',
'http://dailymotion.com',
'http://globo.com',
'http://instagram.com/developer/',
'http://livedoor.com',
'http://wordpress.org/showcase/',
'http://bp.blogspot.com',
'http://wigetmedia.com/advertisers',
'http://www.search-results.com/web?&q=barack%20obama',
'http://cnet.com',
'http://nytimes.com',
'http://torrentz.eu/search?f=barack+obama',
'http://livejournal.com',
'http://douban.com',
'http://www.weather.com/weather/right-now/Mountain+View+CA+94043',
'http://dailymail.co.uk',
'http://www.tianya.cn/bbs/index.shtml',
'http://ehow.com',
'http://theproject.badoo.com/final.phtml',
# pylint: disable=line-too-long
'http://www.bankofamerica.com/deposits/checksave/index.cfm?template=check_eBanking',
'http://vimeo.com',
'http://360.cn',
'http://indiatimes.com',
'http://deviantart.com',
'http://reddit.com',
'http://aweber.com',
'http://warriorforum.com',
'http://spiegel.de',
'http://pconline.com.cn',
'http://mozilla.org',
'http://booking.com',
'http://goo.ne.jp',
'https://www.chase.com/online/Home-Lending/mortgages.htm',
'http://addthis.com',
'http://56.com',
'http://news.blogfa.com/',
'http://www.stumbleupon.com/jobs',
'https://www.dropbox.com/about',
'http://www.clicksor.com/publishers/adformat',
'http://answers.com',
'http://en.softonic.com/',
'http://walmart.com',
'http://pengyou.com',
'http://outbrain.com',
'http://comcast.net',
'http://foxnews.com',
'http://photobucket.com/findstuff/photography%20styles/',
'http://bleach.wikia.com/?redirect=no',
'http://sourceforge.net/projects/xoops/?source=frontpage&position=1',
'http://onet.pl',
'http://guardian.co.uk',
# pylint: disable=line-too-long
'https://www.wellsfargo.com/jump/enterprise/doublediscount?msc=5589&mplx=10918-70119-3408-64',
'http://wikimediafoundation.org/wiki/Home',
'http://xunlei.com',
'http://as.58.com/shuma/',
'http://skype.com',
'http://etsy.com',
'http://bild.de',
# pylint: disable=line-too-long
'http://search.naver.com/search.naver?where=nexearch&query=barack+obama&sm=top_hty&fbm=0&ie=utf8',
'http://statcounter.com/features/?PHPSESSID=bbjcvjr681bcul4vqvgq2qgmo7',
'http://iqiyi.com',
'http://fbcdn.net',
'http://www.myspace.com/browse/people',
'http://allegro.pl/antyki-i-sztuka',
'http://yesky.com',
'http://justbeenpaid.com',
'http://adultfriendfinder.com',
'http://fiverr.com',
'http://www.leboncoin.fr/annonces/offres/centre/',
'http://dictionary.reference.com/',
'http://realtime.rediff.com/instasearch#!barack%20obama',
'http://zol.com.cn',
'http://optmd.com',
'http://www.filestube.com/search.html?q=barack+obama&select=All',
'http://xinhuanet.com',
'http://www.salesforce.com/sales-cloud/overview/',
# pylint: disable=line-too-long
'http://www.squidoo.com/make-cards-and-gift-bags-with-antique-photos',
'http://www.domaintools.com/research/',
'http://download.cnet.com/windows/?tag=hdr;brandnav',
'https://rapidshare.com/#!shop',
'http://people.com.cn',
'http://ucoz.ru',
'http://free.fr',
'http://nicovideo.jp',
# pylint: disable=line-too-long
'http://www.yelp.com/search?find_desc=food&find_loc=San+Jose%2C+CA&ns=1',
'http://slideshare.net',
'http://archive.org/web/web.php',
'http://www.cntv.cn/index.shtml',
'http://english.cntv.cn/01/index.shtml',
'http://abonnez-vous.orange.fr/residentiel/accueil/accueil.aspx',
'http://v.it168.com/',
'http://nbcolympics.com',
'http://hootsuite.com',
# pylint: disable=line-too-long
'http://www.scribd.com/doc/52210329/The-Masters-Augusta-National-s-Amen-Corner-up-close',
'http://themeforest.net',
'http://4399.com',
'http://www.soku.com/v?keyword=barack%20obama',
'http://google.se',
'http://funmoods.com',
'http://csdn.net',
'http://telegraph.co.uk',
'http://taringa.net',
# pylint: disable=line-too-long
'http://www.tripadvisor.com/Tourism-g32701-Mendocino_California-Vacations.html',
'http://pof.com',
'http://wp.pl',
'http://soundcloud.com/flosstradamus/tracks',
'http://w3schools.com/html/default.asp',
'http://ameblo.jp/staff/',
'http://wsj.com',
'http://web.de',
'http://sweetim.com',
'http://rambler.ru',
'http://gmx.net',
'http://www.indeed.com/jobs?q=software&l=Mountain+View%2C+CA',
'http://ilivid.com',
'http://www.xing.com/search/people?search%5Bq%5D=lufthansa',
'http://reuters.com',
'http://hostgator.com',
'http://www.ikea.com/us/en/catalog/categories/departments/living_room/',
'http://www.kaixin001.com/award2012/wenming/index.php',
'http://ku6.com',
'http://libero.it',
'http://samsung.com',
'http://hudong.com',
'http://espncricinfo.com',
'http://china.com',
# pylint: disable=line-too-long
'http://www.ups.com/content/us/en/bussol/browse/smallbiz/new-to-ups.html?WT.svl=SolExp',
'http://letv.com',
'http://ero-advertising.com',
'http://mashable.com',
'http://iminent.com',
'http://rutracker.org',
# pylint: disable=line-too-long
'http://www.shopping.hp.com/en_US/home-office/-/products/Laptops/Laptops',
# pylint: disable=line-too-long
'http://www.clickbank.com/buy_products.htm?dores=true&mainCategoryId=1340&sortField=POPULARITY&b1=1340',
'http://b.hatena.ne.jp/',
# pylint: disable=line-too-long
'http://www.youdao.com/search?q=barack+obama&ue=utf8&keyfrom=web.index',
'http://forbes.com',
'http://nbcnews.com',
'http://bitauto.com',
'http://php.net',
'http://www.target.com/c/women/-/N-5xtd3#?lnk=nav_t_spc_1_0',
'http://dianxin.cn',
'http://www.aizhan.com/siteall/www.youboy.com/',
'http://veiculos-home.mercadolivre.com.br/',
'http://kakaku.com',
'http://flipkart.com',
'http://paipai.com'
]
class Top2012Q3Page(page.Page):
def __init__(self, url, ps):
super(Top2012Q3Page, self).__init__(
url=url, page_set=ps, credentials_path = 'data/credentials.json',
name=url[:140]) # Make sure page's name is not too long
self.archive_data_file = 'data/2012Q3.json'
def RunPageInteractions(self, action_runner):
with action_runner.CreateGestureInteraction('ScrollAction'):
action_runner.ScrollPage()
class Top2012Q3PageSet(story.StorySet):
""" Pages hand-picked from top-lists in Q32012. """
def __init__(self):
super(Top2012Q3PageSet, self).__init__(
archive_data_file='data/2012Q3.json',
cloud_storage_bucket=story.PARTNER_BUCKET)
for url in TOP_2013_URLS:
self.AddStory(Top2012Q3Page(url, self))
# Copyright 2014 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 import story
class ToughLayerCasesPage(page_module.Page):
def __init__(self, url, page_set):
super(ToughLayerCasesPage, self).__init__(url=url, page_set=page_set)
class ToughLayerCasesPageSet(story.StorySet):
""" A collection of tests to measure layer performance. """
def __init__(self):
super(ToughLayerCasesPageSet, self).__init__()
self.AddStory(ToughLayerCasesPage(
'file://layer_stress_tests/opacity.html', self))
......@@ -20,18 +20,6 @@ class Typical10MobilePage(page_module.Page):
action_runner.ScrollPage()
action_runner.Wait(20)
class Typical10MobileReloadPage(Typical10MobilePage):
def __init__(self, url, page_set, name=''):
super(Typical10MobileReloadPage, self).__init__(
url=url, page_set=page_set, name=name,)
def RunPageInteractions(self, action_runner):
for _ in range(0, 5):
action_runner.ReloadPage()
action_runner.WaitForJavaScriptCondition(
'document.readyState === "complete"')
urls_list = [
# Why: Top site
......@@ -68,14 +56,3 @@ class Typical10MobilePageSet(story.StorySet):
for url in urls_list:
self.AddStory(Typical10MobilePage(url, self, name=url))
class Typical10MobileReloadPageSet(story.StorySet):
"""10 typical mobile pages, used for reloading power testing."""
def __init__(self):
super(Typical10MobileReloadPageSet, self).__init__(
archive_data_file='data/typical_10_mobile.json',
cloud_storage_bucket=story.PARTNER_BUCKET)
for url in urls_list:
self.AddStory(Typical10MobileReloadPage(url, self))
......@@ -2,41 +2,12 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
import shutil
from profile_creators import profile_generator
from telemetry.page import page as page_module
from telemetry.page import cache_temperature as cache_temperature_module
from telemetry.page import shared_page_state
from telemetry import story
class Typical25ProfileSharedState(shared_page_state.SharedDesktopPageState):
"""Shared state associated with a profile generated from 25 navigations.
Generates a shared profile on initialization.
"""
def __init__(self, test, finder_options, story_set):
super(Typical25ProfileSharedState, self).__init__(
test, finder_options, story_set)
from profile_creators import small_profile_extender
generator = profile_generator.ProfileGenerator(
small_profile_extender.SmallProfileExtender,
'small_profile')
self._out_dir, self._owns_out_dir = generator.Run(finder_options)
if self._out_dir:
finder_options.browser_options.profile_dir = self._out_dir
else:
finder_options.browser_options.dont_override_profile = True
def TearDownState(self):
"""Clean up generated profile directory."""
super(Typical25ProfileSharedState, self).TearDownState()
if self._owns_out_dir:
shutil.rmtree(self._out_dir)
class Typical25Page(page_module.Page):
def __init__(self, url, page_set, run_no_page_interactions,
......
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