div 요소를 #myPage 요소 아래에서 찾고 있다고 가정합니다. 내 목표는 CSS 선택기를 사용하고 검색 범위를 #myPage 자손으로 제한하는 것입니다.Selenium을위한 상대 CSS 탐지기가 있습니까?
WebElement page = driver.findElement(new By.ById("myPage"));
....
List<WebElement> item = page.findElements(new By.ByCssSelector("div"));
: CSS는 모든
문서 div의,
#myPage의뿐만 아니라 후손을 산출 사용하려고 시도하는, 그러나
WebElement page = driver.findElement(new By.ById("myPage"));
....
List<WebElement> item = page.findElements(new By.ByXPath(".//div"));
: 나는 이런 식으로 뭔가를 쓸 수 셀레늄의 XPath 로케이터를 사용
큰 차이점은 XPath 식을 상대적으로 만드는 접두사가 .//
입니다. 나는 CSS 구문에서 비슷한 속성을 찾을 수 없었고 가능한지 궁금했습니다.
P.
#myPage > div
표현식을 사용할 수 있다는 것을 알고 있지만 페이지 조회 작업을 해당 자손의 조회와 결합하면 항상 바람직하지는 않습니다.
나는 이것을 시도 할 것입니다 : driver.findElements (By.cssSelector ("# myPage div")) 어쨌든, 첫 번째 작업은 특정 ID가있는 페이지를 찾고 있습니다. 두 번째 작업 - 페이지에서 요소를 찾고 있습니다 ('div'descedants). "#myPage div"cssSelector가 작업을 통합하는 것 같습니다. –
응답 해 주셔서 감사합니다. 그러나 이러한 작업을 결합하는 것이 항상 필요한 것은 아닙니다. – gamliela