Методы выполняют клик по объекту, который Selenium находит по определенному локатору(указан в названии метода)
->clickElementWithID($id)
->clickElementWithXpath($xpath)
->clickElementWithLinkText($linkText)
->clickElementWithName($name)
->clickElementWithClassName($className)
->clickElementWithCssSelector($cssSelector)
Общая структура метода ->clickElementWithLocator($Locator)
public function clickElementWithLocator($Locator) {
$this->webDriver->findElement(WebDriverBy::Locator($Locator))->getLocationOnScreenOnceScrolledIntoView(); //Находит элемент на странице и скроллит страницу до него, в случае если он вне зоны видимости.
$this->webDriver->findElement(WebDriverBy::Locator($Locator))->click(); //Нажатие на предварительно найденный элемент
}
Методы выполняют клик по объекту, инициируют открытие этого объекта на новой вкладке и перекидывают фреймворк selenium на новую вкладку
->clickElementWithXpathAndOpenInNewTab($xpath)
->clickElementWithIDAndOpenInNewTab($id)
Общая структура метода ->clickElementWithLocatorAndOpenInNewTab($Locator)
public function clickElementWithLocatorAndOpenInNewTab($id) {
$this->webDriver->findElement(WebDriverBy::Locator($Locator))->getLocationOnScreenOnceScrolledIntoView(); //Находит элемент на странице и скроллит страницу до него, в случае если он вне зоны видимости.
$this->webDriver->findElement(WebDriverBy::Locator($Locator))->sendKeys(array(WebDriverKeys::CONTROL, "\xEE\x80\x87")); //Посылает на этот элемент сочетание клавиш Ctrl+Enter, таким образом ссылка под объектом открывается в новой вкладке
$this->waitLoader(); //Стандартный метод ожидания
$this->switchToLastOpenedTab(); //Универсальный метод, который перекидывает Selenium на последнюю возможную вкладку
}