Я пишу тесты интеграции / e2e, и по какой-то причине любые команды драйвера селена не работают с chromedriver, но они работают безупречно с драйвером firefox и безголовым драйвером firefox.
Командыпробовал: moveByOffset и doubleClick
Пробовал оба метода Geract Interact
interact {
doubleClick(centerClickable)
}
и прямой доступ к веб-драйверу:
def driver = browser.getDriver()
Actions action = new Actions(driver)
WebElement element= driver.findElement(By.className("vis-drag-center"))
def doubleclick = action.doubleClick(element).build()
doubleclick.perform()
Оба метода работают с драйвером firefox.Также не работает с драйвером Chrome.
Файл GebConfig.groovy настроен следующим образом:
import io.github.bonigarcia.wdm.WebDriverManager
import org.openqa.selenium.Dimension
import org.openqa.selenium.chrome.ChromeDriver
import org.openqa.selenium.chrome.ChromeOptions
import org.openqa.selenium.firefox.FirefoxDriver
import org.openqa.selenium.firefox.FirefoxOptions
def chromeWebDriverVersion = '70.0.3538.67'
def driverFirefox = {
WebDriverManager.firefoxdriver().setup()
def driver = new FirefoxDriver()
driver.manage().window().setSize(new Dimension(width, height))
return driver
}
// ChromeDriver reference: https://sites.google.com/a/chromium.org/chromedriver/
// Download and configure ChromeDriver using https://github.com/bonigarcia/webdrivermanager
def driverChrome = {
WebDriverManager.chromedriver().version(chromeWebDriverVersion).setup()
def driver = new ChromeDriver()
driver.manage().window().setSize(new Dimension(width, height))
return driver
}
environments {
firefox {
driver = driverFirefox
}
chrome {
driver = driverChrome
}
//driver = driverFirefox
driver = driverChrome
Я также пробовал версию 2.43 Chrome.
Дополнительная информация:
- Mac Mojave
- Selenium v 3.7.0
- geb v 2.2
- spockcore v 1.1-groovy-2.4
- groovy v2.4.5
- webdrivermanager v 3.0.0
Если кому-то интересно, что делает тест: выберите элемент vis.js, нажав на него.Спать на секунду (код здесь не указан), затем открыть / активировать его, дважды щелкнув по нему.Или перетаскивая его.
Кроме действий с селеном, все отлично работает с chromedriver и geb.Только теперь, когда мне нужен doubleClick и moveByOffset (а не перемещение к элементу!), У меня возникают проблемы с тем, чтобы все работало правильно
Я нашел похожий вопрос здесь, может быть та же проблема.Возможно, нет.Но решения не предусмотрено: Веб-драйвер Selenium DragAndDropToOffset в Chrome не работает?
Любая помощь очень ценится.