HelpAddonsSeleniumIntro - psiinon/zap-core-help GitHub Wiki

Selenium

The Selenium add-on provides WebDrivers, for other add-ons, to invoke and remotely control web browsers. It's also bundled the HtmlUnit web browser, an headless Java based web browser.

The following web browsers are supported:

Name ID Requirements/Notes
Chrome chrome Requires ChromeDriver, if not on the system's PATH, it can be set in the options. For more information on ChromeDriver and how to obtain it refer to the ChromeDriver website.
Firefox firefox The following versions are known to work: 45 (ESR), 46 and 47.0.1 (older version might work too). Some versions are known to not work, for example, 47.0. Newer versions (≥ 48) require geckodriver, it can be set in the options. For more information on geckodriver and how to obtain it refer to the geckodriver website (see footer note for caveat when using geckodriver).
HtmlUnit htmlunit Bundled browser, does not have any requirement.
Internet Explorer ie Requires IEDriverServer, if not on the system's PATH, it can be set in the options. For more information on IEDriverServer refer to the IEDriverServer website (see footer note for caveat when using Internet Explorer).
Opera opera  
PhantomJS phantomjs requires PhantomJS binary, if not on the system's PATH, it can be set in the options. For more information on PhantomJS and how to obtain it refer to the PhantomJS website (see footer note for caveat when using PhantomJS).
Safari safari  

To use Firefox, Chrome, Internet Explorer, Opera, PhantomJS and Safari, you must have them installed in your system. The ID of the browser can be used to choose the browser when configuring ZAP through the command line or using the ZAP API (for example, to set the AJAX Spider to use one or other browser).

Some of the requirements (e.g. WebDrivers) of the browsers can be configured in the Options Selenium screen.

Note: ZAP add-ons can add additional browsers.

Firefox/geckodriver Note: There's an issue (Bug 1103196) that prevents HTTPS sites from being used in versions ≥ 48 and < 52.

PhantomJS Note: There's an issue (Issue #11342) that prevents sites at localhost, 127.0.0.1 and ::1 from being proxied through ZAP. Until a fix is available is advised to not use it in those cases. Some add-ons might choose to show warning message when that happens. As workaround one could define, in the hosts file, a domain name mapping to the local address and use that domain name instead.

Internet Explorer Note: Not all versions of Internet Explorer work out of the box, refer to the IEDriverServer website for more details on how to configure them.

See also

     Options Selenium screen for an overview of the Selenium Options
     API for an overview of the Selenium API
⚠️ **GitHub.com Fallback** ⚠️