Class HtmlUnitDriverOptions
- java.lang.Object
-
- org.openqa.selenium.MutableCapabilities
-
- org.openqa.selenium.remote.AbstractDriverOptions<HtmlUnitDriverOptions>
-
- org.openqa.selenium.htmlunit.options.HtmlUnitDriverOptions
-
- All Implemented Interfaces:
Serializable
,org.openqa.selenium.Capabilities
public class HtmlUnitDriverOptions extends org.openqa.selenium.remote.AbstractDriverOptions<HtmlUnitDriverOptions>
Class to manage options specific toHtmlUnitDriver
.Example usage:
HtmlUnitDriverOptions options = new HtmlUnitDriverOptions() .setWebClientVersion(BrowserVersion.FIREFOX_ESR) .setJavaScriptEnabled(true); // For use with HtmlUnitDriver: HtmlUnitDriver driver = new HtmlUnitDriver(options); // For use with RemoteWebDriver: RemoteWebDriver driver = new RemoteWebDriver( new URL("http://localhost:4444/"), new HtmlUnitDriverOptions());
Getting/setting HtmlUnitDriver options:
In addition to methods for reading and writing specific HtmlUnitDriver options, you can use the standard
MutableCapabilities
API:Capabilities.is(String)
getCapability(String)
setCapability(String, Object)
Example usage:
HtmlUnitDriverOptions options = new HtmlUnitDriverOptions(); boolean popupBlockerEnabled = options.is(HtmlUnitOption.optPopupBlockerEnabled); // NOTE: See "Getting individual browser version traits" below String browserLanguage = (String) options.getCapability(BrowserVersionTrait.optBrowserLanguage); options.setCapability(HtmlUnitOption.optGeolocationEnabled, true);
Getting individual browser version traits:
HtmlUnitDriverOption contains a
The individual traits of the BrowserVersion object can be read directly as well via the standardBrowserVersion
which can be read and written directly:Capabilities
API. For example:
NOTE: Although HtmlUnitDriverOptions objects are mutable (their properties can be altered), the individual traits of theHtmlUnitDriverOptions options = new HtmlUnitDriverOptions(BrowserVersion.EDGE); // System time zone accessed via BrowserVersion API TimeZone viaBrowserVersion = options.getWebClientVersion.getSystemTimezone(); // System time zone accessed via standard Capabilities API TimeZone viaCapabilityName = (TimeZone) options.getCapability(BrowserVersionTrait.optSystemTimezone);
BrowserVersion
object within these objects cannot be altered:HtmlUnitDriverOptions options = new HtmlUnitDriverOptions(BrowserVersion.CHROME); options.setCapability(BrowserVersionTrait.optUserAgent, "HtmlUnitDriver emulating Google Chrome"); // => UnsupporterOperationException: Individual browser version traits are immutable; 'optUserAgent' cannot be set
- Since:
- HtmlUnitDriver v4.22.0
- Author:
- Scott Babcock, Ronald Brill
- See Also:
HtmlUnitOption
,BrowserVersionTrait
, Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static String
HTMLUNIT_OPTIONS
Key used to store a set of HtmlUnitDriverOptions in aCapabilities
object.
-
Constructor Summary
Constructors Constructor Description HtmlUnitDriverOptions()
HtmlUnitDriverOptions(Map<String,Object> optionsMap)
HtmlUnitDriverOptions(BrowserVersion version)
HtmlUnitDriverOptions(BrowserVersion version, boolean enableJavascript)
HtmlUnitDriverOptions(org.openqa.selenium.Capabilities source)
-
Method Summary
-
Methods inherited from class org.openqa.selenium.remote.AbstractDriverOptions
asMap, getCapabilityNames, setAcceptInsecureCerts, setBrowserVersion, setEnableDownloads, setImplicitWaitTimeout, setPageLoadStrategy, setPageLoadTimeout, setPlatformName, setProxy, setScriptTimeout, setStrictFileInteractability, setUnhandledPromptBehaviour
-
Methods inherited from class org.openqa.selenium.MutableCapabilities
equals, hashCode, merge, setCapability, setCapability, setCapability, toJson, toString
-
-
-
-
Field Detail
-
HTMLUNIT_OPTIONS
public static final String HTMLUNIT_OPTIONS
Key used to store a set of HtmlUnitDriverOptions in aCapabilities
object.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
HtmlUnitDriverOptions
public HtmlUnitDriverOptions()
-
HtmlUnitDriverOptions
public HtmlUnitDriverOptions(BrowserVersion version)
-
HtmlUnitDriverOptions
public HtmlUnitDriverOptions(BrowserVersion version, boolean enableJavascript)
-
HtmlUnitDriverOptions
public HtmlUnitDriverOptions(org.openqa.selenium.Capabilities source)
-
-
Method Detail
-
getCapability
public Object getCapability(String capabilityName)
- Specified by:
getCapability
in interfaceorg.openqa.selenium.Capabilities
- Overrides:
getCapability
in classorg.openqa.selenium.remote.AbstractDriverOptions<HtmlUnitDriverOptions>
-
setCapability
public void setCapability(String capabilityName, Object value)
- Overrides:
setCapability
in classorg.openqa.selenium.MutableCapabilities
-
getExtraCapabilityNames
protected Set<String> getExtraCapabilityNames()
- Specified by:
getExtraCapabilityNames
in classorg.openqa.selenium.remote.AbstractDriverOptions<HtmlUnitDriverOptions>
-
getExtraCapability
protected Object getExtraCapability(String capabilityName)
- Specified by:
getExtraCapability
in classorg.openqa.selenium.remote.AbstractDriverOptions<HtmlUnitDriverOptions>
-
importOptions
public HtmlUnitDriverOptions importOptions(WebClientOptions source)
Import values from the specified source into this HtmlUnitDriver options object.- Parameters:
source
- sourceWebClientOptions
object- Returns:
- this
HtmlUnitDriverOptions
object
-
applyOptions
public void applyOptions(WebClientOptions target)
Apply values from this HtmlUnitDriver options object to the specifies target.- Parameters:
target
- targetWebClientOptions
object
-
isJavaScriptEnabled
public boolean isJavaScriptEnabled()
-
setJavaScriptEnabled
public HtmlUnitDriverOptions setJavaScriptEnabled(boolean enableJavascript)
-
isDownloadImages
public boolean isDownloadImages()
-
setDownloadImages
public HtmlUnitDriverOptions setDownloadImages(boolean downloadImages)
-
getWebClientVersion
public BrowserVersion getWebClientVersion()
-
setWebClientVersion
public HtmlUnitDriverOptions setWebClientVersion(BrowserVersion webClientVersion)
-
setSSLClientCertificateKeyStore
public HtmlUnitDriverOptions setSSLClientCertificateKeyStore(KeyStore keyStore, char[] keyStorePassword)
-
setSSLClientCertificateKeyStore
public HtmlUnitDriverOptions setSSLClientCertificateKeyStore(URL keyStoreUrl, String keyStorePassword, String keyStoreType)
-
setSSLClientCertificateKeyStore
public HtmlUnitDriverOptions setSSLClientCertificateKeyStore(InputStream keyStoreInputStream, String keyStorePassword, String keyStoreType)
-
setSSLTrustStore
public HtmlUnitDriverOptions setSSLTrustStore(URL sslTrustStoreUrl, String sslTrustStorePassword, String sslTrustStoreType)
-
-