This project versioning adheres to Semantic Versioning.
Call to a member function toArray()
if capabilities were already converted to an array.WebDriverCheckboxes
and WebDriverRadios
helper classes to simplify interaction with checkboxes and radio buttons.visibilityOfAnyElementsLocated()
method to WebDriverExpectedCondition
.Constant CURLOPT_CONNECTTIMEOUT_MS already defined
.Cookie
value object instead of an array when passed to to addCookie()
method of WebDriverOptions
.getCookieNamed()
and getCookies()
methods of WebDriverOptions
are now encapsulated in Cookie
object instead of an plain array. The object implements ArrayAccess
interface to provide backward compatibility.ext-zip
is now specified as required dependency in composer.json (but the extension was already required by the code, though).WebDriverCapabilities::isJavascriptEnabled()
method.textToBePresentInElementValue
expected condition in favor of elementValueContains
.null
is passed to sendKeys()
.getCapabilities()
method of RemoteWebDriver
, to retrieve actual capabilities acknowledged by the remote driver on startup.RemoteWebDriver
. (So far only desired capabilities were supported.)urlIs
- current URL exactly equals given valueurlContains
- current URL contains given texturlMatches
- current URL matches regular expressiontitleMatches
- current page title matches regular expressionelementTextIs
- text in element exactly equals given textelementTextContains
(as an alias for textToBePresentInElement
) - text in element contains given textelementTextMatches
- text in element matches regular expressionnumberOfWindowsToBe
- number of opened windows equals given number<select>
by its partial text (using selectByVisiblePartialText()
).XPathEscaper
helper class to quote XPaths containing both single and double quotes.WebDriverSelectInterface
, to allow implementation of custom select-like components, eg. those not built around and actual select tag.Symfony\Process
is used to start local WebDriver processes (when browsers are run directly, without Selenium server) to workaround some PHP bugs and improve portability.RemoteWebDriver
class.setSessionID()
and setCommandExecutor()
methods of RemoteWebDriver
class; these values should be immutable and thus passed only via constructor.WebDriverExpectedCondition::textToBePresentInElement()
in favor of elementTextContains()
.(de)selectByIndex()
and getAllSelectedOptions()
methods of WebDriverSelect
when used with non-multiple select element.select*()
and deselect*()
methods of WebDriverSelect
.WebDriverBy
and DesiredCapabilities
classes easily extensible.ChromeDriver
.WebDriverCommand
and DesiredCapabilities
.FirefoxDriver
when open_basedir
restriction is in effect.WebDriverWait
.