Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在节点中注册WebDriverJ的错误处理程序?_Javascript_Node.js_Selenium Webdriver - Fatal编程技术网

Javascript 如何在节点中注册WebDriverJ的错误处理程序?

Javascript 如何在节点中注册WebDriverJ的错误处理程序?,javascript,node.js,selenium-webdriver,Javascript,Node.js,Selenium Webdriver,当尝试按照文档中的说明注册错误处理程序时,我收到一个错误: 注册一个事件侦听器,以便在发生事件时收到通知 未处理的错误 webdriver.promise.Application。 getInstance()。 on('uncaughtException',函数(e){ console.error('存在未捕获的异常:'+e.message); }); 注册错误处理程序的正确方法是什么?在搜索WebDriverJ源代码时,我发现: 因此,显然正确的方法是使用: webdriver.promis

当尝试按照文档中的说明注册错误处理程序时,我收到一个错误:

注册一个事件侦听器,以便在发生事件时收到通知 未处理的错误

webdriver.promise.Application。 getInstance()。 on('uncaughtException',函数(e){ console.error('存在未捕获的异常:'+e.message); });


注册错误处理程序的正确方法是什么?

在搜索WebDriverJ源代码时,我发现:

因此,显然正确的方法是使用:

webdriver.promise.controlFlow().on('uncaughtException', function(e) {
        console.error('There was an unhandled exception! ' + e);
    });
我已经测试过了,它是有效的

(显然,我正在使用的SeleniumWebDriver版本没有包含此弃用警告,只是失败了。)

更新:

  webdriver.promise.logDeprecation_ = function(oldSig, newSig) {
    if (window.console) {
      window.console.log(
          'Using deprecated ' + oldSig + ', use ' + newSig +
          'instead. This will stop working in Selenium 2.31');
    }   };

我使用的是Selenium 2.32。

而且
controlFlow
已被弃用,我如何捕获异常?

啊哈
webdriver.promise.controlFlow().on('uncaughtException')
正是我想要的-谢谢!
webdriver.promise.controlFlow().on('uncaughtException', function(e) {
        console.error('There was an unhandled exception! ' + e);
    });
  webdriver.promise.logDeprecation_ = function(oldSig, newSig) {
    if (window.console) {
      window.console.log(
          'Using deprecated ' + oldSig + ', use ' + newSig +
          'instead. This will stop working in Selenium 2.31');
    }   };