Teilweise ist es erforderlich, dass WebDriver-Instanzen für die
entsprechende Umgebung konfiguriert werden. Bei der Registrierung von
neuen WebDriver-Instanzen erfolgt diese Konfiguration in den
WebDriverCreator
-Implementierungen. Bei der
Verwendung von bestehenden WebDriver-Instanzen wie z.B. für den
Firefox-Browser sind bereits Basisklassen vorhanden, denen die
Konfiguration übergeben werden kann. Zu diesem Zweck verfügen die
Creator-Instanzen über Konstruktoren mit den gleichen Parametern wie die
WebDriver-Instanzen selbst. Das folgende Code-Beispiel enthält die
Konstruktoren der
FirefoxDriverCreator
-Implementation.
Beispiel 3.6. Konstruktoren FirefoxDriverCreator
public class FirefoxDriverCreator extends AbstractWebDriverCreator { /** * Erzeugt einen Creator. */ public FirefoxDriverCreator() {...} /** * Erzeugt einen Creator. * * @param firefoxBinary * {@link FirefoxDriver#FirefoxDriver(FirefoxBinary, FirefoxProfile)} * @param firefoxProfile * {@link FirefoxDriver#FirefoxDriver(FirefoxBinary, FirefoxProfile)} */ public FirefoxDriverCreator(FirefoxBinary firefoxBinary, FirefoxProfile firefoxProfile) {...} /** * Erzeugt einen Creator. * * @param firefoxProfile * {@link FirefoxDriver#FirefoxDriver(FirefoxProfile)} */ public FirefoxDriverCreator(FirefoxProfile firefoxProfile) {...} /** * Erzeugt einen Creator. * * @param capabilities * {@link FirefoxDriver#FirefoxDriver(Capabilities)} */ public FirefoxDriverCreator(Capabilities capabilities) {...}
Die Konstruktoren für den
InternetExplorerDriverCreator
und den
ChromeDriverCreator
enthalten ebenfalls die
Parameter, die auch bei der Erzeugung der entsprechenden
WebDriver-Instanz erforderlich sind.
Um eine neue Konfiguration für einen bestehenden WebDriver zu
ändern, wird die Methode
WebConfiguration.registerWebDriverCreator(WebDriverCreator
creator)
verwendet. Dadurch werden die bestehenden
Konfigurationen überschrieben.