Я использую Selenium Web драйвер с кодом Java.Всякий раз, когда возникает org.openqa.selenium.NoSuchElementException, трассировка стека выводит метод идентификатора как css selector
каждый раз, хотя я использовал id
для поиска веб-элемента.
Я пытался использовать идентификатор xpath
, и он печатается идеальнотрассировка стека с правильным методом идентификатора.Мой пример кода.
public void testMethod()
{
try
{
driver.findElement(By.id("test"));
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
Вывод трассировки стека:
org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"css selector","selector":"#test"}
(Session info: chrome=75.0.3770.100)
For documentation on this error, please visit: http://seleniumhq.org/exceptions/no_such_element.html
Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:19:58.91Z'
System info: host: 'DTB150', ip: '10.37.55.150', os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '1.8.0_181'
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 75.0.3770.100, chrome: {chromedriverVersion: 75.0.3770.90 (a6dcaf7e3ec6f..., userDataDir: C:\Users\DEV~1.SOL\AppData\...}, goog:chromeOptions: {debuggerAddress: localhost:38152}, javascriptEnabled: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: XP, platformName: XP, proxy: Proxy(), setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify}
Session ID: b6c8f6cd722e746281dd59657850e10f
*** Element info: {Using=id, value=test}
Проверка метода в первой строке исключения.Там написано method: css selector
, хотя я использую id
для поиска элемента.
Это какая-то ошибка, или я что-то неправильно понял или какая-то проблема с моим кодом?