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

Side by Side Diff: tools/perf/metrics/loading.py

Issue 191383003: First cut of chrome-proxy (data reduction proxy) measurements. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: . Created 6 years, 9 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 unified diff | Download patch
OLDNEW
1 # Copyright 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 from metrics import Metric 5 from metrics import Metric
6 6
7 class LoadingMetric(Metric): 7 class LoadingMetric(Metric):
8 """A metric for page loading time based entirely on window.performance""" 8 """A metric for page loading time based entirely on window.performance"""
9 9
10 def Start(self, page, tab): 10 def Start(self, page, tab):
11 raise NotImplementedError() 11 raise NotImplementedError()
12 12
13 def Stop(self, page, tab): 13 def Stop(self, page, tab):
14 raise NotImplementedError() 14 raise NotImplementedError()
15 15
16 def AddResults(self, tab, results): 16 def AddResults(self, tab, results):
17 load_timings = tab.EvaluateJavaScript('window.performance.timing') 17 load_timings = tab.EvaluateJavaScript('window.performance.timing')
18 load_time_ms = ( 18
19 float(load_timings['loadEventStart']) - 19 # All numbers in milliseconds.
tonyg 2014/03/25 16:12:25 Let's factor just this file out into a separate pa
bolian 2014/03/25 18:19:01 Done. Np at all, that is good. Split out: https://
20 load_timings['navigationStart']) 20 page_load = (
21 dom_content_loaded_time_ms = ( 21 float(load_timings['loadEventStart']) - load_timings['navigationStart'])
22 results.Add('page_load', 'ms', page_load)
tonyg 2014/03/25 16:12:25 Naming convention suggestion: # NavigationStart r
bolian 2014/03/25 18:19:01 Doen. much better.
23
24 dom_content_loaded = (
22 float(load_timings['domContentLoadedEventStart']) - 25 float(load_timings['domContentLoadedEventStart']) -
23 load_timings['navigationStart']) 26 load_timings['navigationStart'])
24 results.Add('load_time', 'ms', load_time_ms) 27 results.Add('dom_content_loaded', 'ms', dom_content_loaded)
25 results.Add('dom_content_loaded_time', 'ms', 28
26 dom_content_loaded_time_ms) 29 delay_before_fetch = (
30 float(load_timings['fetchStart']) - load_timings['navigationStart'])
31 results.Add('delay_before_fetch', 'ms', delay_before_fetch,
32 data_type='unimportant')
33
34 delay_before_request = (
35 float(load_timings['requestStart']) - load_timings['navigationStart'])
36 results.Add('delay_before_request', 'ms', delay_before_request,
37 data_type='unimportant')
38
39 domain_lookup = (
40 float(load_timings['domainLookupEnd']) -
41 load_timings['domainLookupStart'])
42 results.Add('domain_lookup', 'ms', domain_lookup, data_type='unimportant')
43
44 connect = (
45 float(load_timings['connectEnd']) - load_timings['connectStart'])
46 results.Add('connect', 'ms', connect, data_type='unimportant')
47
48 request = (
49 float(load_timings['responseStart']) - load_timings['requestStart'])
50 results.Add('request', 'ms', request, data_type='unimportant')
51
52 response = (
53 float(load_timings['responseEnd']) - load_timings['responseStart'])
54 results.Add('response', 'ms', response, data_type='unimportant')
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698