요소를 찾을 수 없음 : Selenium 및 Java를 사용한 {“method”:“xpath”,“selector”:“// li [@ id =”tablist1-tab3“]”} 오류

Nov 26 2020

이 오류를 여러 번 받았습니다.

Unable to locate element: {"method":"xpath","selector":"//li[@id="tablist1-tab3"]"}

내가 사용한 코드는 다음과 같습니다.

options.addArguments("--headless");
options.addArguments("window-size=1200x900");
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
WebElement tab = driver.findElement(By.xpath("//li[@id=\"tablist1-tab3\"]"));
tab.click();

누군가이 오류로 나를 도울 수 있습니까?

답변

2 DebanjanB Nov 26 2020 at 04:59

에 WebDriverWait 을 elementToBeClickable()사용해야하며 다음 로케이터 전략 중 하나를 사용할 수 있습니다 .

  • cssSelector:

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.cssSelector("li#tablist1-tab3"))).click();
    
  • xpath:

    new WebDriverWait(driver, 20).until(ExpectedConditions.elementToBeClickable(By.xpath("//li[@id=\"tablist1-tab3\"]"))).click();
    
1 Agnia Nov 26 2020 at 03:55

WebElement 탭 = driver.findElement (By.xpath ( '// li [@ id = "tablist1-tab3"]')); 이 시도

LevanGoderdzishvili Nov 26 2020 at 05:07

요소가 iFrame 내부에 있지 않은지 확인합니다. 그렇다면 먼저 iFrame 요소를 찾고 Selenium의 switchTo ()를 사용해야합니다. 그 후에 iframe 내부의 요소를 찾을 수 있습니다.