Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

har-api-ready not firing because of video? #42

Open
jangrewe opened this issue Feb 3, 2017 · 2 comments
Open

har-api-ready not firing because of video? #42

jangrewe opened this issue Feb 3, 2017 · 2 comments

Comments

@jangrewe
Copy link

jangrewe commented Feb 3, 2017

I was kindly asked by the SiteSpeed.io guys to open a bug with you guys, as i'm having trouble to use Firefox in their Docker image to generate metrics for our site.

This is the command line i'm using:

docker run --privileged --shm-size=512m --rm --dns 192.168.21.2 sitespeedio/sitespeed.io:4.3.9 -n 3 -b firefox --browsertime.timeouts.script 80000 https://quazer.com/

and it crashes with this error:

Mozilla Firefox 50.1.0
[2017-02-03 07:24:43] Versions OS: linux 4.8.0-34-generic nodejs: v6.9.1 sitespeed.io: 4.3.9 browsertime: 1.0.0-beta.23 coach: 0.30.4
[2017-02-03 07:24:43] Starting firefox for analysing https://quazer.com/ 3 time(s)
[2017-02-03 07:24:43] Testing url https://quazer.com/ run 1
[2017-02-03 07:24:52] Testing url https://quazer.com/ run 2
[2017-02-03 07:26:21] Couldn't generate the HAR from Firefox from the HAR Export Trigger.
[2017-02-03 07:26:21] ScriptTimeoutError: Timed out
    at WebDriverError (/usr/src/app/node_modules/selenium-webdriver/lib/error.js:27:5)
    at ScriptTimeoutError (/usr/src/app/node_modules/selenium-webdriver/lib/error.js:203:5)
    at Object.throwDecodedError (/usr/src/app/node_modules/selenium-webdriver/lib/error.js:477:11)
    at parseHttpResponse (/usr/src/app/node_modules/selenium-webdriver/lib/http.js:499:15)
    at doSend.then.response (/usr/src/app/node_modules/selenium-webdriver/lib/http.js:440:13)
    at process._tickCallback (internal/process/next_tick.js:103:7)
    at Driver.schedule (/usr/src/app/node_modules/selenium-webdriver/lib/webdriver.js:816:17)
    at Driver.executeAsyncScript (/usr/src/app/node_modules/selenium-webdriver/lib/webdriver.js:900:17)
    at Promise.try (/usr/src/app/node_modules/browsertime/lib/core/seleniumRunner.js:188:28)
From previous event:
    at SeleniumRunner.runAsyncScript (/usr/src/app/node_modules/browsertime/lib/core/seleniumRunner.js:182:11)
    at FirefoxDelegate.onStopIteration (/usr/src/app/node_modules/browsertime/lib/core/engineDelegate/firefoxDelegate.js:50:19)
    at runner.start.tap.tap.tap.then.then.tap.tap (/usr/src/app/node_modules/browsertime/lib/core/engine.js:247:39)
From previous event:
    at runIteration (/usr/src/app/node_modules/browsertime/lib/core/engine.js:247:10)
    at Promise.reduce (/usr/src/app/node_modules/browsertime/lib/core/engine.js:285:25)
From previous event:
    at Promise.resolve.tap.tap.tap (/usr/src/app/node_modules/browsertime/lib/core/engine.js:284:17)
    at runCallback (timers.js:637:20)
    at tryOnImmediate (timers.js:610:5)
    at processImmediate [as _immediateCallback] (timers.js:582:5)
From previous event:
    at Engine.run (/usr/src/app/node_modules/browsertime/lib/core/engine.js:283:8)
    at engine.start.then (/usr/src/app/lib/plugins/browsertime/analyzer.js:76:26)
From previous event:
    at Object.analyzeUrl (/usr/src/app/lib/plugins/browsertime/analyzer.js:76:8)
    at storageManager.createDirForUrl.then.then (/usr/src/app/lib/plugins/browsertime/index.js:132:34)
From previous event:
    at Object.processMessage (/usr/src/app/lib/plugins/browsertime/index.js:132:14)
    at queue.process (/usr/src/app/lib/support/queueHandler.js:157:57)
    at drainItem (/usr/src/app/node_modules/concurrent-queue/index.js:92:21)
    at Immediate.drain (/usr/src/app/node_modules/concurrent-queue/index.js:73:84)
    at runCallback (timers.js:637:20)
    at tryOnImmediate (timers.js:610:5)
    at processImmediate [as _immediateCallback] (timers.js:582:5)

It works fine if i use only 1 run, but crashes when using >1 run. The default is 3 runs, to get a median for the metrics.
Sometimes it even crashes with only 1 run if i don't use --browsertime.timeouts.script 80000.

They suspect the har-api-ready event doesn't fire because there's a video playing. The original issue report is here: sitespeedio/sitespeed.io#1345

@biphobe
Copy link

biphobe commented Mar 21, 2017

@soulgalore @jangrewe I don't think that the video is the issue here. I'm experiencing the same bug when trying to test my application (which doesn't use any kind of video).

My runtime: Versions OS: win32 6.1.7601 nodejs: v6.8.1 sitespeed.io: 4.7.0 browsertime: 1.0.0-beta.31 coach: 0.31.0

Even checking out the Google and running sitespeed.io http://google.com -b firefox --summary --browsertime.timeouts.script 80000 -n 1 returns the same error.

I have updated my firefox to 52.0.1, it didn't help though.

@soulgalore
Copy link

Hey @biphobe can you create an issue at sitespeed.io and we can help you out there. Jans original issue was that it didn't work with that specific page. For you I think it is more a generic bug, since it doesn't work at all for you. We always prefer if you run the Docker container since then it's easier for us to reproduce, but go over to the other repo and we will try to help you there :)

Best
Peter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants