catchpoint / WebPageTest.agent

Cross-platform WebPageTest agent
Other
213 stars 137 forks source link

IE / Firefox support #32

Open reganp opened 7 years ago

reganp commented 7 years ago

Hi I'm not sure if Firefox and IE are supported yet but I'm getting errors when trying to run tests on these browsers (Chrome is working fine).

Firefox and IE: The console output of wptagent keeps repeating this message: "Connect to dev tools Error: HTTPConnectionPool(host='localhost',port=9223): Max retries exceeded with url: /json (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0358C970>: Failed to establish a new connection: [Errno 10061] No connection could be made because the target machine actively refused it',))"

Chrome (FYI): The console output of wptagent displays this message: "Connect to dev tools websocket Error: [Errno 10061] No connection could be made because the target machine actively refused it"

Firefox: The browser loads but it won't navigate to the test url.

IE11: The browser loads but it always navigates to this url (I'm guessing it's bing.com because that's the default search engine on IE): "https://www.bing.com/search?q=--disable-background-networking+--no-default-browser-check+--no-first-run+--process-per-tab+--new-window+--disable-infobars+--disable-translate+--disable-notifications+--disable-desktop-notifications+--disable-save-password-bubble+--allow-running-insecure-content+--disable-component-update+--disable-background-downloads+--disable-add-to-shelf+--disable-client-side-phishing-detection+--disable-datasaver-prompt+--disable-default-apps+--disable-domain-reliability+--safebrowsing-disable-auto-update+--disable-background-timer-throttling+--host-resolver-rules%3D%22MAP+cache.pack.google.com+127.0.0.1%22,%22MAP+clients1.google.com+127.0.0.1%22+--window-position%3D%220,0%22+--window-size%3D%221024,768%22+--remote-debugging-port%3D9224+--user-data-dir%3D%22C%3A%5Cwptagent-new%5Cwptagent%5Cwork%5CWPT-Test22%5Cbrowser.170721_DW_3.1%22+--no-sandbox+about%3Ablank&src=IE-TopResult&FORM=IETR02&conversationid="

I added Firefox and IE11 to browsers.ini as follows:

[IE11] exe=C:/Program Files (x86)/Internet Explorer/iexplore.exe

[Firefox] exe=C:/Program Files (x86)/Mozilla Firefox/firefox.exe

reganp commented 7 years ago

Just noticed this: "(currently supports Chrome only on Windows and Linux)". Do you have ETA on IE / Firefox please?

pmeenan commented 7 years ago

IE isn't supported yet.

Firefox should work and shouldn't require anything in browsers.ini. It should detect both stable and nightly installs. That said, if you define it manually, you need to add "type=Firefox" after the exe definition so it knows how to drive it.

reganp commented 7 years ago

Thanks Patrick. When I try to run test in Firefox without browsers.ini entry I get this in console output: "Unhandled exception running test: No module named marionette_driver.marionette Traceback (most recent call last): File "C:\wptagent-new\wptagent\wptagent.py", line 64, in run_testing self.run_single_test() File "C:\wptagent-new\wptagent\wptagent.py", line 111, in run_single_test browser.launch(self.job, self.task) File "C:\wptagent-new\wptagent\internal\firefox.py", line 98, in launch from marionette_driver.marionette import Marionette ImportError: No module named marionette_driver.marionette"

pmeenan commented 7 years ago
pip install marionette_driver
reganp commented 7 years ago

The Firefox browser is locking up and I'm getting this console error: Unhandled exception running test: No data received over socket Traceback (most recent call last): File "C:\wptagent-new\wptagent\wptagent.py", line 64, in run_testing self.run_single_test() File "C:\wptagent-new\wptagent\wptagent.py", line 111, in run_single_test browser.launch(self.job, self.task) File "C:\wptagent-new\wptagent\internal\firefox.py", line 119, in launch self.marionette.set_window_size(height=task['height'], width=task['width']) File "C:\Python27\lib\site-packages\marionette_driver\marionette.py", line 204 3, in set_window_size return self._send_message("setWindowSize", body) File "C:\Python27\lib\site-packages\marionettedriver\decorators.py", line 28, in m._handle_socket_failure() File "C:\Python27\lib\site-packages\marionettedriver\decorators.py", line 23, in return func(*args, **kwargs) File "C:\Python27\lib\site-packages\marionette_driver\marionette.py", line 731 , in _send_message msg = self.client.request(name, params) File "C:\Python27\lib\site-packages\marionette_driver\transport.py", line 284, in request return self.receive() File "C:\Python27\lib\site-packages\marionette_driver\transport.py", line 184, in receive raise socket.error("No data received over socket")