Как найти элемент, как показано на рисунке - PullRequest
1 голос
/ 08 ноября 2019

Раскрывающийся список уже выбран по значению 1 и не находится по идентификатору или имени. Как найти xpath, чтобы найти как для изображения?

HTML:

<select name="ctl05$ddlSelectBox" onchange="javascript:setTimeout(&#39;__doPostBack(\&#39;ctl05$ddlSelectBox\&#39;,\&#39;\&#39;)&#39;, 0)" id="ctl05_ddlSelectBox" style="height:21px;width:180px;">
    <option selected="selected" value="-1">--Select Box--</option>
    <option value="2742">Box_H026_01</option>

Изображение:

image

1 Ответ

0 голосов
/ 08 ноября 2019

Желаемым элементом является JavaScript включенный <select> узел. Итак, найдите элемент, который вы должны вызвать WebDriverWait для visibilityOfElementLocated(), и вы можете использовать любое из следующих решений:

  • Использование CSS_SELECTOR:

    WebElement element = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector("select[name$='ddlSelectBox'][onchange*='ddlSelectBox']")));
    
  • Использование XPATH:

    WebElement element = new WebDriverWait(driver, 20).until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//select[contains(@name, 'ddlSelectBox') and contains(@onchange, 'ddlSelectBox')]")));
    
...