Не могу использовать ноды WebElement - PullRequest
0 голосов
/ 17 мая 2018

При использовании

WebElement img = driver.findElement(By.id("abc"));

Я получаю следующую ошибку -

WebElement img = driver.findElement(webdriver.By.id('captchaimg'));
           ^^^

SyntaxError: Unexpected identifier
    at createScript (vm.js:80:10)
    at Object.runInThisContext (vm.js:139:10)
    at Module._compile (module.js:616:28)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Function.Module.runMain (module.js:693:10)
    at startup (bootstrap_node.js:191:16)
    at bootstrap_node.js:612:3

Установленные мной пакеты -

селен WebDriver

chromdriver

WebDriver

Версии -

  • узел 8.11.2
  • selenium-webdriver 4.0.0-alpha.1
  • chromedriver 2.38 (скачано с здесь )

1 Ответ

0 голосов
/ 17 мая 2018

попробуйте это:

var webdriver = require('selenium-webdriver');

var driver = new webdriver.Builder().
   withCapabilities(webdriver.Capabilities.chrome()).
   build();

driver.get('your URL');  
//WebElement img = driver.findElement(webdriver.By.id('abc')); 
// We can't use `WebElement` at here, in javascript, 
// we can't declare the type of variable like Java.
// In your case, JavaScript will treat `WebElement` as variable name,
// Because there already has a variable name, JavaScript don't know 
// how to deal with the following `img`.
// You should change `WebElement` to `var` or `const`

var img = driver.findElement(webdriver.By.id('abc')); 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...