#java #selenium #selenium-webdriver #findelement
Вопрос:
Я кодирую на java с помощью selenium и застрял. Я должен найти элемент по идентификатору, идентификатор элемента такой "msi_num_create-copy"
(число меняется каждый раз), есть способ найти элемент по части идентификатора?
Комментарии:
1.
//*[contains(@id, 'your_sub_string')]
, У вас также есть функцияstarts-with
, вместоcontains
Ответ №1:
да, вам нужно будет использовать либо css-селектор, либо xpath :
XPATH был бы :
//*[contains(@id, '_create-copy') and starts-with(@id, 'msi')]
и используйте его вот так :
WebElement someEle = driver.findElement(By.xpath("//*[contains(@id, '_create-copy') and starts-with(@id, 'msi')]"));
someEle.click(); or someEle.sendKeys("some string");