Элемент селена Katalon виден, но отображается как ложный - PullRequest
0 голосов
/ 05 сентября 2018

Я пытаюсь нажать кнопку в vue js с vuetify с селеном / каталоном. Он полностью виден в пользовательском интерфейсе, но по-прежнему можно нажать. Я могу найти элемент без проблем, но нажатие на него возвращает элемент не видимой ошибки. Я пробовал различные решения , в том числе:

  • щелчок мышью с помощью javascript (js выполняет скрипт щелчка, но НЕ нажимает кнопку)
  • с помощью класса Action перейдите к элементу и затем щелкните по нему (он НЕ перемещается к элементу)
  • фокусировка и прокрутка к элементу
  • ждет
  • переключение на активный элемент, содержимое по умолчанию и окно максимизации
  • нет родительских элементов с отображением нет

При отладке заметил следующее:

// Able to find element with no issues
WebDriver driver = DriverFactory.getWebDriver();
String xPathForButton = "//div[@id='validationStepper']/div[3]/div[1]/div/div[2]/fieldset/div[1]/div/div/div/div[3]/button[1]";
def element = driver.findElement(By.xpath(xPath));
// Element not visible exception
element.click();

KeywordUtil.logInfo('X: ' + element.getLocation().x); // Prints 0
KeywordUtil.logInfo('Y: ' + element.getLocation().y); // Prints 0
KeywordUtil.logInfo('Element is enabled: ' + element.isEnabled()); // Prints true
KeywordUtil.logInfo('Element is displayed: ' + element.isDisplayed()); // Prints false

Мне нужно использовать xpath, чтобы найти этот элемент. Может ли кто-нибудь помочь мне с тем, как я могу правильно обнаружить и щелкнуть этот элемент?

1 Ответ

0 голосов
/ 05 сентября 2018

Проблема оказалась в том, что родительский элемент был display: none во время выполнения. Хотя у меня изначально не было родительских элементов, которые не отображались, CSS изменился динамически, что привело к этому. Я внес исправления, после чего элемент был виден.

...