【问题标题】:always fail selenium basic example硒基本示例总是失败
【发布时间】:2018-05-15 13:00:13
【问题描述】:

我已经安装了 npm selenium-driver,现在我想尝试使用它。

我已经创建了一个js文件test.js

var webdriver = require('selenium-webdriver'),
By = require('selenium-webdriver').By,
until = require('selenium-webdriver').until;

var driver = new webdriver.Builder()
  .usingServer("http://docker01.localhost:4444/wd/hub")
  .forBrowser('firefox')
  .build();

driver.get('http://demo.mahara.org');
driver.findElement(By.id('login_login_username')).then(function(links){
console.log('Found', links.length, 'Wiki links.' )
driver.quit();
});

我从我的控制台发送这个节点 cmd

$ 节点测试\js\test.js

(node:5648) UnhandledPromiseRejectionWarning: NoSuchElementError: Unable to locate element: *[id="login_login_username"]
在 Object.throwDecodedError (C:\xampp\htdocs\next-noregressiontests\src\test\javascript\node_modules\selenium-webdriver\lib\error.js:550:15)
在 parseHttpResponse (C:\xampp\htdocs\next-noregressiontests\src\test\javascript\node_modules\selenium-webdriver\lib\http.js:542:13)
在 Executor.execute (C:\xampp\htdocs\next-noregressiontests\src\test\javascript\node_modules\selenium-webdriver\lib\http.js:468:26)

在 process._tickCallback (internal/process/next_tick.js:182:7) (节点:5648)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。此错误源于在没有 catch 块的情况下抛出异步函数内部,或拒绝未使用 .catch() 处理的承诺。 (拒绝编号:1) (节点:5648)[DEP0018] DeprecationWarning:不推荐使用未处理的承诺拒绝。将来,未处理的 Promise 拒绝将使用非零退出代码终止 Node.js 进程。

我不明白问题出在哪里

【问题讨论】:

  • 确保 id 值为“login_login_username”。错误表示不存在这样的元素。有时浏览器会花时间加载 DOM,在这种情况下也会发生此错误。请在单击该元素之前尝试等待。
  • 能否请您提供部分 html 以检查此元素路径。

标签: selenium-webdriver


【解决方案1】:

这个元素

[id="login_login_username"]

试试这个:

[@id="login_login_username"]

【讨论】:

    【解决方案2】:

    加载页面后需要等待元素出现。所以在driver.get(...)之后,加上这个:

    driver.wait(until.elementLocated(by.id('login_login_username')), 10000, 'Cannot find element');
    

    这将继续寻找元素,如果没有找到它会在 10 秒后超时。

    【讨论】:

      猜你喜欢
      • 2013-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-05
      • 1970-01-01
      • 1970-01-01
      • 2012-05-15
      • 2016-05-06
      相关资源
      最近更新 更多