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

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

Issue 809393002: Added support for improvement_direction to relevant values, which is propogated to chartjson. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix linter issues Created 5 years, 11 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 from telemetry.value import improvement_direction
6 from telemetry.value import scalar 7 from telemetry.value import scalar
7 8
8 class LoadingMetric(Metric): 9 class LoadingMetric(Metric):
9 """A metric for page loading time based entirely on window.performance""" 10 """A metric for page loading time based entirely on window.performance"""
10 11
11 def Start(self, page, tab): 12 def Start(self, page, tab):
12 raise NotImplementedError() 13 raise NotImplementedError()
13 14
14 def Stop(self, page, tab): 15 def Stop(self, page, tab):
15 raise NotImplementedError() 16 raise NotImplementedError()
16 17
17 def AddResults(self, tab, results): 18 def AddResults(self, tab, results):
18 load_timings = tab.EvaluateJavaScript('window.performance.timing') 19 load_timings = tab.EvaluateJavaScript('window.performance.timing')
19 20
20 # NavigationStart relative markers in milliseconds. 21 # NavigationStart relative markers in milliseconds.
21 load_start = ( 22 load_start = (
22 float(load_timings['loadEventStart']) - load_timings['navigationStart']) 23 float(load_timings['loadEventStart']) - load_timings['navigationStart'])
23 results.AddValue(scalar.ScalarValue( 24 results.AddValue(scalar.ScalarValue(
24 results.current_page, 'load_start', 'ms', load_start)) 25 results.current_page, 'load_start', 'ms', load_start,
26 improvement_direction=improvement_direction.DOWN))
25 27
26 dom_content_loaded_start = ( 28 dom_content_loaded_start = (
27 float(load_timings['domContentLoadedEventStart']) - 29 float(load_timings['domContentLoadedEventStart']) -
28 load_timings['navigationStart']) 30 load_timings['navigationStart'])
29 results.AddValue(scalar.ScalarValue( 31 results.AddValue(scalar.ScalarValue(
30 results.current_page, 'dom_content_loaded_start', 'ms', 32 results.current_page, 'dom_content_loaded_start', 'ms',
31 dom_content_loaded_start)) 33 dom_content_loaded_start,
34 improvement_direction=improvement_direction.DOWN))
32 35
33 fetch_start = ( 36 fetch_start = (
34 float(load_timings['fetchStart']) - load_timings['navigationStart']) 37 float(load_timings['fetchStart']) - load_timings['navigationStart'])
35 results.AddValue(scalar.ScalarValue( 38 results.AddValue(scalar.ScalarValue(
36 results.current_page, 'fetch_start', 'ms', fetch_start, 39 results.current_page, 'fetch_start', 'ms', fetch_start,
37 important=False)) 40 important=False, improvement_direction=improvement_direction.DOWN))
38 41
39 request_start = ( 42 request_start = (
40 float(load_timings['requestStart']) - load_timings['navigationStart']) 43 float(load_timings['requestStart']) - load_timings['navigationStart'])
41 results.AddValue(scalar.ScalarValue( 44 results.AddValue(scalar.ScalarValue(
42 results.current_page, 'request_start', 'ms', request_start, 45 results.current_page, 'request_start', 'ms', request_start,
43 important=False)) 46 important=False, improvement_direction=improvement_direction.DOWN))
44 47
45 # Phase measurements in milliseconds. 48 # Phase measurements in milliseconds.
46 domain_lookup_duration = ( 49 domain_lookup_duration = (
47 float(load_timings['domainLookupEnd']) - 50 float(load_timings['domainLookupEnd']) -
48 load_timings['domainLookupStart']) 51 load_timings['domainLookupStart'])
49 results.AddValue(scalar.ScalarValue( 52 results.AddValue(scalar.ScalarValue(
50 results.current_page, 'domain_lookup_duration', 'ms', 53 results.current_page, 'domain_lookup_duration', 'ms',
51 domain_lookup_duration, important=False)) 54 domain_lookup_duration, important=False,
55 improvement_direction=improvement_direction.DOWN))
52 56
53 connect_duration = ( 57 connect_duration = (
54 float(load_timings['connectEnd']) - load_timings['connectStart']) 58 float(load_timings['connectEnd']) - load_timings['connectStart'])
55 results.AddValue(scalar.ScalarValue( 59 results.AddValue(scalar.ScalarValue(
56 results.current_page, 'connect_duration', 'ms', connect_duration, 60 results.current_page, 'connect_duration', 'ms', connect_duration,
57 important=False)) 61 important=False, improvement_direction=improvement_direction.DOWN))
58 62
59 request_duration = ( 63 request_duration = (
60 float(load_timings['responseStart']) - load_timings['requestStart']) 64 float(load_timings['responseStart']) - load_timings['requestStart'])
61 results.AddValue(scalar.ScalarValue( 65 results.AddValue(scalar.ScalarValue(
62 results.current_page, 'request_duration', 'ms', request_duration, 66 results.current_page, 'request_duration', 'ms', request_duration,
63 important=False)) 67 important=False, improvement_direction=improvement_direction.DOWN))
64 68
65 response_duration = ( 69 response_duration = (
66 float(load_timings['responseEnd']) - load_timings['responseStart']) 70 float(load_timings['responseEnd']) - load_timings['responseStart'])
67 results.AddValue(scalar.ScalarValue( 71 results.AddValue(scalar.ScalarValue(
68 results.current_page, 'response_duration', 'ms', response_duration, 72 results.current_page, 'response_duration', 'ms', response_duration,
69 important=False)) 73 important=False, improvement_direction=improvement_direction.DOWN))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698