Created
February 22, 2019 22:27
-
-
Save bdekoz/587d254b0a2fb25081123969ac59ecf9 to your computer and use it in GitHub Desktop.
browsertime hacks #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Invoke like `env ANDROID_SERIAL=... bash one.sh -n 3 -vv https://google.com`. | |
: PACKAGE ${PACKAGE:=org.mozilla.tv.firefox.gecko.debug} | |
+ : PACKAGE org.mozilla.tv.firefox.gecko.debug | |
# : EXTERNAL ${EXTERNAL:=/mnt/sdcard} | |
: TMP ${TMP:=/tmp} | |
+ : TMP /tmp | |
: RESULT_TOP_DIR ${RESULT_TOP_DIR:=browsertime-results} | |
+ : RESULT_TOP_DIR browsertime-results | |
: ANDROID_SERIAL ${ANDROID_SERIAL:='172.31.200.28:5555'} | |
+ : ANDROID_SERIAL 172.31.200.28:5555 | |
export ANDROID_SERIAL | |
+ export ANDROID_SERIAL | |
: TURBO ${TURBO:=true false} | |
+ : TURBO true false | |
: BROWSER ${BROWSER:=firefox chrome} | |
+ : BROWSER firefox chrome | |
URL=${@: -1} | |
+ URL=-vv | |
URL=${URL#"https://"} | |
+ URL=-vv | |
# N.B.: yargs doesn't parse `--firefox.android.intentArgument --ez` | |
# properly, so always use `=--ez`! | |
if [[ $BROWSER == *"firefox"* ]] ; then | |
for turbo in $TURBO ; do | |
env RUST_BACKTRACE=1 RUST_LOG=trace bin/browsertime.js \ | |
--android \ | |
--skipHar \ | |
--firefox.geckodriverPath "/home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver" \ | |
--firefox.android.deviceSerial="$ANDROID_SERIAL" \ | |
--firefox.android.package "org.mozilla.tv.firefox.gecko.debug" \ | |
--firefox.android.activity "org.mozilla.tv.firefox.MainActivity" \ | |
--firefox.android.intentArgument=--ez \ | |
--firefox.android.intentArgument=TURBO_MODE \ | |
--firefox.android.intentArgument=$turbo \ | |
--firefox.android.intentArgument=-a \ | |
--firefox.android.intentArgument=android.intent.action.VIEW \ | |
--firefox.android.intentArgument=-d \ | |
--firefox.android.intentArgument="data:," \ | |
--browser firefox \ | |
--resultDir "$RESULT_TOP_DIR/firefox.turbo-$turbo/$URL" \ | |
"$@" | |
done | |
fi | |
+ [[ firefox chrome == *\f\i\r\e\f\o\x* ]] | |
+ for turbo in $TURBO | |
+ env RUST_BACKTRACE=1 RUST_LOG=trace bin/browsertime.js --android --skipHar --firefox.geckodriverPath /home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver --firefox.android.deviceSerial=172.31.200.28:5555 --firefox.android.package org.mozilla.tv.firefox.gecko.debug --firefox.android.activity org.mozilla.tv.firefox.MainActivity --firefox.android.intentArgument=--ez --firefox.android.intentArgument=TURBO_MODE --firefox.android.intentArgument=true --firefox.android.intentArgument=-a --firefox.android.intentArgument=android.intent.action.VIEW --firefox.android.intentArgument=-d --firefox.android.intentArgument=data:, --browser firefox --resultDir browsertime-results/firefox.turbo-true/-vv --preURL https://google.com --preURLDelay 5000 https://twitter.com -n 1 -vv | |
[2019-02-22 14:26:07] DEBUG: [browsertime] Running with options: { | |
"scripts": [], | |
"iterations": 1, | |
"delay": 0, | |
"videoParams": { | |
"addTimer": true, | |
"debug": false, | |
"keepOriginalVideo": false, | |
"filmstripFullSize": false, | |
"createFilmstrip": true, | |
"framerate": 30, | |
"crf": 23, | |
"filmstripQuality": 75, | |
"nice": 0 | |
}, | |
"_": [ | |
"https://twitter.com" | |
], | |
"video-params": { | |
"add-timer": true, | |
"debug": false, | |
"keep-original-video": false, | |
"filmstrip-full-size": false, | |
"create-filmstrip": true, | |
"framerate": 30, | |
"crf": 23, | |
"filmstrip-quality": 75, | |
"nice": 0 | |
}, | |
"android": true, | |
"screenshot": false, | |
"pageCompleteCheckInactivity": false, | |
"page-complete-check-inactivity": false, | |
"prettyPrint": false, | |
"pretty-print": false, | |
"connectivity": { | |
"throttle": { | |
"localhost": false | |
}, | |
"profile": "native", | |
"engine": "external" | |
}, | |
"cacheClearRaw": false, | |
"cache-clear-raw": false, | |
"xvfb": false, | |
"headless": false, | |
"spa": false, | |
"skipHar": true, | |
"skip-har": true, | |
"firefox": { | |
"geckodriverPath": "/home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver", | |
"geckodriver-path": "/home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver", | |
"android": { | |
"deviceSerial": "172.31.200.28:5555", | |
"device-serial": "172.31.200.28:5555", | |
"package": "org.mozilla.tv.firefox.gecko.debug", | |
"activity": "org.mozilla.tv.firefox.MainActivity", | |
"intentArgument": [ | |
"--ez", | |
"TURBO_MODE", | |
"true", | |
"-a", | |
"android.intent.action.VIEW", | |
"-d", | |
"data:," | |
], | |
"intent-argument": [ | |
"--ez", | |
"TURBO_MODE", | |
"true", | |
"-a", | |
"android.intent.action.VIEW", | |
"-d", | |
"data:," | |
] | |
}, | |
"includeResponseBodies": "none", | |
"include-response-bodies": "none" | |
}, | |
"browser": "firefox", | |
"b": "firefox", | |
"resultDir": "browsertime-results/firefox.turbo-true/-vv", | |
"result-dir": "browsertime-results/firefox.turbo-true/-vv", | |
"preURL": "https://google.com", | |
"pre-url": "https://google.com", | |
"preURLDelay": 5000, | |
"pre-url-delay": 5000, | |
"n": 1, | |
"v": 2, | |
"verbose": 2, | |
"timeouts": { | |
"browserStart": 60000, | |
"browser-start": 60000, | |
"pageLoad": 300000, | |
"page-load": 300000, | |
"script": 80000, | |
"pageCompleteCheck": 300000, | |
"page-complete-check": 300000 | |
}, | |
"screenshotParams": { | |
"type": "jpg", | |
"png": { | |
"compressionLevel": 6 | |
}, | |
"jpg": { | |
"quality": 80 | |
}, | |
"maxSize": 2000 | |
}, | |
"screenshot-params": { | |
"type": "jpg", | |
"png": { | |
"compression-level": 6 | |
}, | |
"jpg": { | |
"quality": 80 | |
}, | |
"max-size": 2000 | |
}, | |
"pageCompleteWaitTime": 5000, | |
"page-complete-wait-time": 5000, | |
"c": "native", | |
"percentiles": [ | |
0, | |
10, | |
90, | |
99, | |
100 | |
], | |
"decimals": 0, | |
"xvfbParams": { | |
"display": 99 | |
}, | |
"xvfb-params": { | |
"display": 99 | |
}, | |
"silent": 0, | |
"q": 0, | |
"$0": "bin/browsertime.js" | |
} | |
[2019-02-22 14:26:07] INFO: [browsertime] Running tests using Firefox - 1 iteration(s) | |
1550874367908 webdriver::command WARN You are using deprecated legacy session negotiation patterns (desiredCapabilities/requiredCapabilities), see https://developer.mozilla.org/en-US/docs/Web/WebDriver/Capabilities#Legacy | |
options: FirefoxOptions { binary: Some("/usr/bin/firefox"), profile: Some(Profile { path: "/tmp/rust_mozprofile.9wMimSdIYFyX", temp_dir: Some(TempDir { path: "/tmp/rust_mozprofile.9wMimSdIYFyX" }), prefs: None, user_prefs: None }), args: Some(["-no-remote"]), log: LogOptions { level: None }, prefs: [], android: Some(AndroidOptions { activity: Some("org.mozilla.tv.firefox.MainActivity"), device_serial: Some("172.31.200.28:5555"), package: "org.mozilla.tv.firefox.gecko.debug", intent_arguments: Some(["--ez", "TURBO_MODE", "true", "-a", "android.intent.action.VIEW", "-d", "data:,"]) }) } | |
capabilities: {"browserName": String("firefox"), "pageLoadStrategy": String("normal")} | |
1550874367924 mozdevice INFO execute_host_shell_command: >> "pm clear org.mozilla.tv.firefox.gecko.debug" | |
1550874368995 mozdevice INFO execute_host_shell_command: << "Success\n" | |
1550874368995 mozdevice INFO execute_host_shell_command: >> "pm grant org.mozilla.tv.firefox.gecko.debug android.permission.WRITE_EXTERNAL_STORAGE" | |
1550874369996 mozdevice INFO execute_host_shell_command: << "" | |
1550874369996 mozdevice INFO execute_host_shell_command: >> "pm grant org.mozilla.tv.firefox.gecko.debug android.permission.READ_EXTERNAL_STORAGE" | |
1550874370917 mozdevice INFO execute_host_shell_command: << "" | |
1550874370925 geckodriver::marionette INFO remote_port 2829 | |
1550874370929 mozdevice INFO execute_host_shell_command: >> "rm -rf /mnt/sdcard/geckodriver-profile" | |
1550874371067 mozdevice INFO execute_host_shell_command: << "" | |
1550874371067 geckodriver::marionette INFO Pushing /tmp/rust_mozprofile.9wMimSdIYFyX to /mnt/sdcard/geckodriver-profile | |
1550874371475 mozdevice INFO execute_host_shell_command: >> "am start -W -n org.mozilla.tv.firefox.gecko.debug/org.mozilla.tv.firefox.MainActivity --ez TURBO_MODE true -a android.intent.action.VIEW -d data:, --es args -profile\\ /mnt/sdcard/geckodriver-profile" | |
1550874373685 mozdevice INFO execute_host_shell_command: << "Starting: Intent { act=android.intent.action.VIEW dat=data:, cmp=org.mozilla.tv.firefox.gecko.debug/org.mozilla.tv.firefox.MainActivity (has extras) }\nStatus: ok\nActivity: org.mozilla.tv.firefox.gecko.debug/org.mozilla.tv.firefox.MainActivity\nThisTime: 1314\nTotalTime: 1314\nWaitTime: 1326\nComplete\n" | |
1550874373686 geckodriver::marionette INFO Forwarding local port tcp:34269 to remote_port tcp:2829 | |
1550874373688 geckodriver::marionette INFO handshake, timeout is None | |
1550874373694 geckodriver::marionette INFO Not connected, sleeping 100ms! | |
1550874373795 geckodriver::marionette INFO handshake, timeout is None | |
1550874373806 geckodriver::marionette INFO Not connected, sleeping 200ms! | |
1550874374006 geckodriver::marionette INFO handshake, timeout is None | |
1550874374028 geckodriver::marionette INFO Not connected, sleeping 400ms! | |
1550874374429 geckodriver::marionette INFO handshake, timeout is None | |
1550874374604 geckodriver::marionette INFO Not connected, sleeping 800ms! | |
1550874375404 geckodriver::marionette INFO handshake, timeout is None | |
1550874375509 geckodriver::marionette INFO Not connected, sleeping 1600ms! | |
1550874377110 geckodriver::marionette INFO handshake, timeout is None | |
[2019-02-22 14:26:17] INFO: [browsertime] Accessing preURL https://google.com | |
[2019-02-22 14:26:18] DEBUG: [browsertime] Waiting for script pageCompleteCheck at most 300000 ms | |
[2019-02-22 14:26:18] VERBOSE: [browsertime] Waiting for script | |
return (function(waitTime) { | |
try { | |
var end = window.performance.timing.loadEventEnd; | |
return (end > 0) && (Date.now() > end + waitTime); | |
} catch(e) { | |
return true; | |
} | |
})(arguments[arguments.length - 1]); | |
[2019-02-22 14:26:29] INFO: [browsertime.command.measure] Testing url https://twitter.com iteration 1 | |
[2019-02-22 14:26:30] DEBUG: [browsertime] Waiting for script pageCompleteCheck at most 300000 ms | |
[2019-02-22 14:26:30] VERBOSE: [browsertime] Waiting for script | |
return (function(waitTime) { | |
try { | |
var end = window.performance.timing.loadEventEnd; | |
return (end > 0) && (Date.now() > end + waitTime); | |
} catch(e) { | |
return true; | |
} | |
})(arguments[arguments.length - 1]); | |
[2019-02-22 14:26:37] VERBOSE: [browsertime.command.measure] Collecting metrics | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script userAgent | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script windowSize | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script documentHeight | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script documentSize | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script documentTitle | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script documentWidth | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script nextHopProtocol | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script responsive | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script url | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script visualElements | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script firstPaint | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script navigationTiming | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script pageTimings | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script paintTiming | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script rumSpeedIndex | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script serverTimings | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script timeToContentfulPaint | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script timeToDomContentFlushed | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script timeToFirstInteractive | |
[2019-02-22 14:26:37] VERBOSE: [browsertime] Executing script userTimings | |
[2019-02-22 14:26:37] DEBUG: [browsertime] Telling browser to quit. | |
[2019-02-22 14:26:37] ERROR: [browsertime] BrowserError: Only supported in Firefox | |
at SeleniumRunner.stop (/home/bkoz/src/browsertime-ncalexan-branch.git/lib/core/seleniumRunner.js:329:15) | |
at process._tickCallback (internal/process/next_tick.js:68:7) | |
[2019-02-22 14:26:37] DEBUG: [browsertime] Telling browser to quit. | |
[2019-02-22 14:26:37] INFO: [browsertime] https://twitter.com 0, backEndTime: 378ms, firstPaint: 712ms, DOMContentLoaded: 2.06s, Load: 2.06s, rumSpeedIndex: 378 | |
[2019-02-22 14:26:37] INFO: [browsertime] Wrote data to browsertime-results/firefox.turbo-true/-vv | |
[2019-02-22 14:26:37] DEBUG: [browsertime] Stopping Browsertime | |
[2019-02-22 14:26:37] DEBUG: [browsertime] Stopped Browsertime | |
+ for turbo in $TURBO | |
+ env RUST_BACKTRACE=1 RUST_LOG=trace bin/browsertime.js --android --skipHar --firefox.geckodriverPath /home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver --firefox.android.deviceSerial=172.31.200.28:5555 --firefox.android.package org.mozilla.tv.firefox.gecko.debug --firefox.android.activity org.mozilla.tv.firefox.MainActivity --firefox.android.intentArgument=--ez --firefox.android.intentArgument=TURBO_MODE --firefox.android.intentArgument=false --firefox.android.intentArgument=-a --firefox.android.intentArgument=android.intent.action.VIEW --firefox.android.intentArgument=-d --firefox.android.intentArgument=data:, --browser firefox --resultDir browsertime-results/firefox.turbo-false/-vv --preURL https://google.com --preURLDelay 5000 https://twitter.com -n 1 -vv | |
[2019-02-22 14:26:38] DEBUG: [browsertime] Running with options: { | |
"scripts": [], | |
"iterations": 1, | |
"delay": 0, | |
"videoParams": { | |
"addTimer": true, | |
"debug": false, | |
"keepOriginalVideo": false, | |
"filmstripFullSize": false, | |
"createFilmstrip": true, | |
"framerate": 30, | |
"crf": 23, | |
"filmstripQuality": 75, | |
"nice": 0 | |
}, | |
"_": [ | |
"https://twitter.com" | |
], | |
"video-params": { | |
"add-timer": true, | |
"debug": false, | |
"keep-original-video": false, | |
"filmstrip-full-size": false, | |
"create-filmstrip": true, | |
"framerate": 30, | |
"crf": 23, | |
"filmstrip-quality": 75, | |
"nice": 0 | |
}, | |
"android": true, | |
"screenshot": false, | |
"pageCompleteCheckInactivity": false, | |
"page-complete-check-inactivity": false, | |
"prettyPrint": false, | |
"pretty-print": false, | |
"connectivity": { | |
"throttle": { | |
"localhost": false | |
}, | |
"profile": "native", | |
"engine": "external" | |
}, | |
"cacheClearRaw": false, | |
"cache-clear-raw": false, | |
"xvfb": false, | |
"headless": false, | |
"spa": false, | |
"skipHar": true, | |
"skip-har": true, | |
"firefox": { | |
"geckodriverPath": "/home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver", | |
"geckodriver-path": "/home/bkoz/src/mozilla-gecko.target.git/target/debug/geckodriver", | |
"android": { | |
"deviceSerial": "172.31.200.28:5555", | |
"device-serial": "172.31.200.28:5555", | |
"package": "org.mozilla.tv.firefox.gecko.debug", | |
"activity": "org.mozilla.tv.firefox.MainActivity", | |
"intentArgument": [ | |
"--ez", | |
"TURBO_MODE", | |
"false", | |
"-a", | |
"android.intent.action.VIEW", | |
"-d", | |
"data:," | |
], | |
"intent-argument": [ | |
"--ez", | |
"TURBO_MODE", | |
"false", | |
"-a", | |
"android.intent.action.VIEW", | |
"-d", | |
"data:," | |
] | |
}, | |
"includeResponseBodies": "none", | |
"include-response-bodies": "none" | |
}, | |
"browser": "firefox", | |
"b": "firefox", | |
"resultDir": "browsertime-results/firefox.turbo-false/-vv", | |
"result-dir": "browsertime-results/firefox.turbo-false/-vv", | |
"preURL": "https://google.com", | |
"pre-url": "https://google.com", | |
"preURLDelay": 5000, | |
"pre-url-delay": 5000, | |
"n": 1, | |
"v": 2, | |
"verbose": 2, | |
"timeouts": { | |
"browserStart": 60000, | |
"browser-start": 60000, | |
"pageLoad": 300000, | |
"page-load": 300000, | |
"script": 80000, | |
"pageCompleteCheck": 300000, | |
"page-complete-check": 300000 | |
}, | |
"screenshotParams": { | |
"type": "jpg", | |
"png": { | |
"compressionLevel": 6 | |
}, | |
"jpg": { | |
"quality": 80 | |
}, | |
"maxSize": 2000 | |
}, | |
"screenshot-params": { | |
"type": "jpg", | |
"png": { | |
"compression-level": 6 | |
}, | |
"jpg": { | |
"quality": 80 | |
}, | |
"max-size": 2000 | |
}, | |
"pageCompleteWaitTime": 5000, | |
"page-complete-wait-time": 5000, | |
"c": "native", | |
"percentiles": [ | |
0, | |
10, | |
90, | |
99, | |
100 | |
], | |
"decimals": 0, | |
"xvfbParams": { | |
"display": 99 | |
}, | |
"xvfb-params": { | |
"display": 99 | |
}, | |
"silent": 0, | |
"q": 0, | |
"$0": "bin/browsertime.js" | |
} | |
[2019-02-22 14:26:38] INFO: [browsertime] Running tests using Firefox - 1 iteration(s) | |
1550874398327 webdriver::command WARN You are using deprecated legacy session negotiation patterns (desiredCapabilities/requiredCapabilities), see https://developer.mozilla.org/en-US/docs/Web/WebDriver/Capabilities#Legacy | |
options: FirefoxOptions { binary: Some("/usr/bin/firefox"), profile: Some(Profile { path: "/tmp/rust_mozprofile.1vlzv8tFwmrh", temp_dir: Some(TempDir { path: "/tmp/rust_mozprofile.1vlzv8tFwmrh" }), prefs: None, user_prefs: None }), args: Some(["-no-remote"]), log: LogOptions { level: None }, prefs: [], android: Some(AndroidOptions { activity: Some("org.mozilla.tv.firefox.MainActivity"), device_serial: Some("172.31.200.28:5555"), package: "org.mozilla.tv.firefox.gecko.debug", intent_arguments: Some(["--ez", "TURBO_MODE", "false", "-a", "android.intent.action.VIEW", "-d", "data:,"]) }) } | |
capabilities: {"browserName": String("firefox"), "pageLoadStrategy": String("normal")} | |
1550874398341 mozdevice INFO execute_host_shell_command: >> "pm clear org.mozilla.tv.firefox.gecko.debug" | |
1550874399490 mozdevice INFO execute_host_shell_command: << "Success\n" | |
1550874399491 mozdevice INFO execute_host_shell_command: >> "pm grant org.mozilla.tv.firefox.gecko.debug android.permission.WRITE_EXTERNAL_STORAGE" | |
1550874400510 mozdevice INFO execute_host_shell_command: << "" | |
1550874400510 mozdevice INFO execute_host_shell_command: >> "pm grant org.mozilla.tv.firefox.gecko.debug android.permission.READ_EXTERNAL_STORAGE" | |
1550874401433 mozdevice INFO execute_host_shell_command: << "" | |
1550874401439 geckodriver::marionette INFO remote_port 2829 | |
1550874401443 mozdevice INFO execute_host_shell_command: >> "rm -rf /mnt/sdcard/geckodriver-profile" | |
1550874401517 mozdevice INFO execute_host_shell_command: << "" | |
1550874401517 geckodriver::marionette INFO Pushing /tmp/rust_mozprofile.1vlzv8tFwmrh to /mnt/sdcard/geckodriver-profile | |
1550874401863 mozdevice INFO execute_host_shell_command: >> "am start -W -n org.mozilla.tv.firefox.gecko.debug/org.mozilla.tv.firefox.MainActivity --ez TURBO_MODE false -a android.intent.action.VIEW -d data:, --es args -profile\\ /mnt/sdcard/geckodriver-profile" | |
1550874404066 mozdevice INFO execute_host_shell_command: << "Starting: Intent { act=android.intent.action.VIEW dat=data:, cmp=org.mozilla.tv.firefox.gecko.debug/org.mozilla.tv.firefox.MainActivity (has extras) }\nStatus: ok\nActivity: org.mozilla.tv.firefox.gecko.debug/org.mozilla.tv.firefox.MainActivity\nThisTime: 1311\nTotalTime: 1311\nWaitTime: 1322\nComplete\n" | |
1550874404066 geckodriver::marionette INFO Forwarding local port tcp:33727 to remote_port tcp:2829 | |
1550874404068 geckodriver::marionette INFO handshake, timeout is None | |
1550874404073 geckodriver::marionette INFO Not connected, sleeping 100ms! | |
1550874404173 geckodriver::marionette INFO handshake, timeout is None | |
1550874404180 geckodriver::marionette INFO Not connected, sleeping 200ms! | |
1550874404380 geckodriver::marionette INFO handshake, timeout is None | |
1550874404393 geckodriver::marionette INFO Not connected, sleeping 400ms! | |
1550874404793 geckodriver::marionette INFO handshake, timeout is None | |
1550874404817 geckodriver::marionette INFO Not connected, sleeping 800ms! | |
1550874405617 geckodriver::marionette INFO handshake, timeout is None | |
1550874405835 geckodriver::marionette INFO Not connected, sleeping 1600ms! | |
1550874407436 geckodriver::marionette INFO handshake, timeout is None | |
[2019-02-22 14:26:47] INFO: [browsertime] Accessing preURL https://google.com | |
[2019-02-22 14:26:48] DEBUG: [browsertime] Waiting for script pageCompleteCheck at most 300000 ms | |
[2019-02-22 14:26:48] VERBOSE: [browsertime] Waiting for script | |
return (function(waitTime) { | |
try { | |
var end = window.performance.timing.loadEventEnd; | |
return (end > 0) && (Date.now() > end + waitTime); | |
} catch(e) { | |
return true; | |
} | |
})(arguments[arguments.length - 1]); | |
[2019-02-22 14:26:59] INFO: [browsertime.command.measure] Testing url https://twitter.com iteration 1 | |
[2019-02-22 14:27:00] DEBUG: [browsertime] Waiting for script pageCompleteCheck at most 300000 ms | |
[2019-02-22 14:27:00] VERBOSE: [browsertime] Waiting for script | |
return (function(waitTime) { | |
try { | |
var end = window.performance.timing.loadEventEnd; | |
return (end > 0) && (Date.now() > end + waitTime); | |
} catch(e) { | |
return true; | |
} | |
})(arguments[arguments.length - 1]); | |
[2019-02-22 14:27:07] VERBOSE: [browsertime.command.measure] Collecting metrics | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script userAgent | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script windowSize | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script documentHeight | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script documentSize | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script documentTitle | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script documentWidth | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script nextHopProtocol | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script responsive | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script url | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script visualElements | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script firstPaint | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script navigationTiming | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script pageTimings | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script paintTiming | |
[2019-02-22 14:27:07] VERBOSE: [browsertime] Executing script rumSpeedIndex | |
[2019-02-22 14:27:08] VERBOSE: [browsertime] Executing script serverTimings | |
[2019-02-22 14:27:08] VERBOSE: [browsertime] Executing script timeToContentfulPaint | |
[2019-02-22 14:27:08] VERBOSE: [browsertime] Executing script timeToDomContentFlushed | |
[2019-02-22 14:27:08] VERBOSE: [browsertime] Executing script timeToFirstInteractive | |
[2019-02-22 14:27:08] VERBOSE: [browsertime] Executing script userTimings | |
[2019-02-22 14:27:08] DEBUG: [browsertime] Telling browser to quit. | |
[2019-02-22 14:27:08] ERROR: [browsertime] BrowserError: Only supported in Firefox | |
at SeleniumRunner.stop (/home/bkoz/src/browsertime-ncalexan-branch.git/lib/core/seleniumRunner.js:329:15) | |
at process._tickCallback (internal/process/next_tick.js:68:7) | |
[2019-02-22 14:27:08] DEBUG: [browsertime] Telling browser to quit. | |
[2019-02-22 14:27:08] INFO: [browsertime] https://twitter.com 0, backEndTime: 488ms, firstPaint: 843ms, DOMContentLoaded: 2.21s, Load: 2.21s, rumSpeedIndex: 488 | |
[2019-02-22 14:27:08] INFO: [browsertime] Wrote data to browsertime-results/firefox.turbo-false/-vv | |
[2019-02-22 14:27:08] DEBUG: [browsertime] Stopping Browsertime | |
[2019-02-22 14:27:08] DEBUG: [browsertime] Stopped Browsertime | |
# N.B.: chromedriver doesn't have an official way to pass intent | |
# arguments, but it does have an unsanitized injection at | |
# https://github.com/bayandin/chromedriver/blob/5a2b8f793391c80c9d1a1b0004f28be0a2be9ab2/chrome/adb_impl.cc#L212. | |
if [[ $BROWSER == *"chrome"* ]] ; then | |
for turbo in $TURBO ; do | |
bin/browsertime.js \ | |
--android \ | |
--skipHar \ | |
--chrome.chromedriverPath "/home/bkoz/src/chromedriver" \ | |
--chrome.android.deviceSerial="$ANDROID_SERIAL" \ | |
--chrome.android.package "org.mozilla.tv.firefox.debug" \ | |
--chrome.android.activity="org.mozilla.tv.firefox.MainActivity --ez TURBO_MODE false -a android.intent.action.VIEW" \ | |
--browser chrome \ | |
--resultDir "$RESULT_TOP_DIR/chrome.turbo-$turbo/$URL" \ | |
"$@" | |
done | |
fi | |
+ [[ firefox chrome == *\c\h\r\o\m\e* ]] | |
+ for turbo in $TURBO | |
+ bin/browsertime.js --android --skipHar --chrome.chromedriverPath /home/bkoz/src/chromedriver --chrome.android.deviceSerial=172.31.200.28:5555 --chrome.android.package org.mozilla.tv.firefox.debug '--chrome.android.activity=org.mozilla.tv.firefox.MainActivity --ez TURBO_MODE false -a android.intent.action.VIEW' --browser chrome --resultDir browsertime-results/chrome.turbo-true/-vv --preURL https://google.com --preURLDelay 5000 https://twitter.com -n 1 -vv | |
[2019-02-22 14:27:08] DEBUG: [browsertime] Running with options: { | |
"scripts": [], | |
"iterations": 1, | |
"delay": 0, | |
"videoParams": { | |
"addTimer": true, | |
"debug": false, | |
"keepOriginalVideo": false, | |
"filmstripFullSize": false, | |
"createFilmstrip": true, | |
"framerate": 30, | |
"crf": 23, | |
"filmstripQuality": 75, | |
"nice": 0 | |
}, | |
"_": [ | |
"https://twitter.com" | |
], | |
"video-params": { | |
"add-timer": true, | |
"debug": false, | |
"keep-original-video": false, | |
"filmstrip-full-size": false, | |
"create-filmstrip": true, | |
"framerate": 30, | |
"crf": 23, | |
"filmstrip-quality": 75, | |
"nice": 0 | |
}, | |
"android": true, | |
"screenshot": false, | |
"pageCompleteCheckInactivity": false, | |
"page-complete-check-inactivity": false, | |
"prettyPrint": false, | |
"pretty-print": false, | |
"connectivity": { | |
"throttle": { | |
"localhost": false | |
}, | |
"profile": "native", | |
"engine": "external" | |
}, | |
"cacheClearRaw": false, | |
"cache-clear-raw": false, | |
"xvfb": false, | |
"headless": false, | |
"spa": false, | |
"skipHar": true, | |
"skip-har": true, | |
"chrome": { | |
"chromedriverPath": "/home/bkoz/src/chromedriver", | |
"chromedriver-path": "/home/bkoz/src/chromedriver", | |
"android": { | |
"deviceSerial": "172.31.200.28:5555", | |
"device-serial": "172.31.200.28:5555", | |
"package": "org.mozilla.tv.firefox.debug", | |
"activity": "org.mozilla.tv.firefox.MainActivity --ez TURBO_MODE false -a android.intent.action.VIEW" | |
} | |
}, | |
"browser": "chrome", | |
"b": "chrome", | |
"resultDir": "browsertime-results/chrome.turbo-true/-vv", | |
"result-dir": "browsertime-results/chrome.turbo-true/-vv", | |
"preURL": "https://google.com", | |
"pre-url": "https://google.com", | |
"preURLDelay": 5000, | |
"pre-url-delay": 5000, | |
"n": 1, | |
"v": 2, | |
"verbose": 2, | |
"timeouts": { | |
"browserStart": 60000, | |
"browser-start": 60000, | |
"pageLoad": 300000, | |
"page-load": 300000, | |
"script": 80000, | |
"pageCompleteCheck": 300000, | |
"page-complete-check": 300000 | |
}, | |
"firefox": { | |
"includeResponseBodies": "none", | |
"include-response-bodies": "none" | |
}, | |
"screenshotParams": { | |
"type": "jpg", | |
"png": { | |
"compressionLevel": 6 | |
}, | |
"jpg": { | |
"quality": 80 | |
}, | |
"maxSize": 2000 | |
}, | |
"screenshot-params": { | |
"type": "jpg", | |
"png": { | |
"compression-level": 6 | |
}, | |
"jpg": { | |
"quality": 80 | |
}, | |
"max-size": 2000 | |
}, | |
"pageCompleteWaitTime": 5000, | |
"page-complete-wait-time": 5000, | |
"c": "native", | |
"percentiles": [ | |
0, | |
10, | |
90, | |
99, | |
100 | |
], | |
"decimals": 0, | |
"xvfbParams": { | |
"display": 99 | |
}, | |
"xvfb-params": { | |
"display": 99 | |
}, | |
"silent": 0, | |
"q": 0, | |
"$0": "bin/browsertime.js" | |
} | |
[2019-02-22 14:27:08] INFO: [browsertime] Running tests using Chrome - 1 iteration(s) | |
events.js:167 | |
throw er; // Unhandled 'error' event | |
^ | |
Error: spawn /home/bkoz/src/chromedriver EACCES | |
at Process.ChildProcess._handle.onexit (internal/child_process.js:232:19) | |
at onErrorNT (internal/child_process.js:407:16) | |
at process._tickCallback (internal/process/next_tick.js:63:19) | |
Emitted 'error' event at: | |
at Process.ChildProcess._handle.onexit (internal/child_process.js:238:12) | |
at onErrorNT (internal/child_process.js:407:16) | |
at process._tickCallback (internal/process/next_tick.js:63:19) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment