#node.js #selenium-webdriver
#node.js #selenium-webdriver
Вопрос:
Я прошел через: https://code.google.com/p/selenium/wiki/WebDriverJs и в нем нет никакой информации. Итак, кто-нибудь может помочь.
У меня есть
var element = driver.findElements(webdriver.By.id("something"))
console.log('text=' element.getAttribute("innerHTML"));
Но не работает. Большая часть документации, похоже, предназначена для JAVA, а не для NodeJS. Если вы столкнетесь с функцией .getText(), я почти уверен, что это JAVA. На самом деле мне просто нужна текстовая часть innerText, а не innerHTML. Но это может быть слишком много.
Комментарии:
1. Я думал, webdriver js был асинхронным? Я удивлен, что этот элемент не равен нулю при запуске консоли. журнал выполняется, если он не находится в обратном вызове.
Ответ №1:
Вы можете проверить innerHTML следующим образом:
driver.executeScript(function() {
return document.querySelector('#something').innerHTML;
}).then(function(innerHTML) {
//check content here
});
Комментарии:
1. Никогда не знал, что это такое! Потрясающе!
Ответ №2:
В соответствии с webdriver.js документы:
var myElement = element(by.css('.myclass'));
myElement.getInnerHtml().then(function(html) {
//do stuff with html here
});
Надеюсь, это поможет! Это работает для меня, используя Node.js Selenium / WebDriver и т.д.