page_cycler.py revision 23730a6e56a168d1879203e4b3819bb36e3d8f1f
1ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch# Copyright (c) 2013 The Chromium Authors. All rights reserved.
2ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch# Use of this source code is governed by a BSD-style license that can be
3ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch# found in the LICENSE file.
4ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
5ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochfrom measurements import page_cycler
65d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)from telemetry import test
7ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
8ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
9ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerBloat(test.Test):
10ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
11ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/page_cycler/bloat.json'
1223730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
13ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
14ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
15ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerDhtml(test.Test):
16ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
17ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/page_cycler/dhtml.json'
1823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
19ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
20ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
21ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerIntlArFaHe(test.Test):
22ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
23ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/intl_ar_fa_he.json'
2423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
25ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
26ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
27ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerIntlEsFrPtBr(test.Test):
28ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
293551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  page_set = 'page_sets/intl_es_fr_pt-BR.json'
3023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
31ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
32ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
33ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerIntlHiRu(test.Test):
34ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
35ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/intl_hi_ru.json'
3623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
37ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
38ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)@test.Disabled('win')  # crbug.com/330909
40ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerIntlJaZh(test.Test):
41ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
42ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/intl_ja_zh.json'
4323730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
44ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
45ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
46ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerIntlKoThVi(test.Test):
47ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
48ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/intl_ko_th_vi.json'
4923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
50ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
51ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
52ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerMorejs(test.Test):
53ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
543551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  page_set = 'page_sets/page_cycler/morejs.json'
5523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
56ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
57ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
58ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerMoz(test.Test):
59ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
60ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/page_cycler/moz.json'
6123730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
62ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
63ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
6458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class PageCyclerNetsimTop10(test.Test):
6558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  """Measures load time of the top 10 sites under simulated cable network."""
6658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  tag = 'netsim'
67ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
6858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  page_set = 'page_sets/top_10.json'
69ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  options = {
7058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    'cold_load_percent': 100,
71ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    'extra_wpr_args': [
72ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch      '--shaping_type=proxy',
73ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch      '--net=cable'
74ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch      ],
7523730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)    'pageset_repeat': 5,
76ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    }
77ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
78ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  def __init__(self):
7958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    super(PageCyclerNetsimTop10, self).__init__()
80ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    # TODO: This isn't quite right.
81ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    # This option will still apply to page cyclers that run after this one.
82ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch    self.test.clear_cache_before_each_run = True
83ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
84ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch
85f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)class PageCyclerTop10Mobile(test.Test):
86f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  test = page_cycler.PageCycler
87f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  page_set = 'page_sets/top_10_mobile.json'
8823730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
89f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
90f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)
915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)class PageCyclerKeyMobileSites(test.Test):
925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  test = page_cycler.PageCycler
935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)  page_set = 'page_sets/key_mobile_sites.json'
9423730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)
9758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)class PageCyclerToughLayoutCases(test.Test):
9858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  test = page_cycler.PageCycler
9958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  page_set = 'page_sets/tough_layout_cases.json'
10023730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
10158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
10258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)
1035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# crbug.com/273986: This test is really flakey on xp.
1045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)# cabug.com/341843: This test is always timing out on Android.
1055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)@test.Disabled('android', 'win')
106ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdochclass PageCyclerTypical25(test.Test):
107ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  test = page_cycler.PageCycler
108ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  page_set = 'page_sets/typical_25.json'
10923730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  options = {'pageset_repeat': 10}
110