Nightwatch:有没有办法找出executeAsync是否执行了javascript?

neeraj080

我正在使用Nightwatch来编写浏览器自动化。我的Nightwatch命令的executeAsync函数有问题。

用于executeAsync的Nightwatch文档

在页面中注入一段JavaScript,以便在当前选定框架的上下文中执行。假定执行的脚本是异步的,并且评估脚本的结果将返回给客户端。

异步脚本命令可能不会跨越页面加载。如果在等待脚本结果时触发了卸载事件,则应将错误返回给客户端。

this.demoTest = function (browser) {
   browser.executeAsync(function(data, done) {
     someAsyncOperation(function() {
       done(true);
     });
   }, [imagedata], function(result) {
     // ...
   });
 };

当异步任务完成时,将调用最后一个可选参数,该参数应该是一个函数。

如何检查异步任务是否已开始执行?我想在浏览器执行异步任务的Javascript主体后立即执行操作。有没有办法找出executeAsync是否已在Nightwatch代码中开始执行?

弗洛伦特·B。

executeAsync呼叫将被保持同步和行为像execute在excution流。要异步执行某些代码,您首先需要使用放下脚本,execute然后使用来等待结果executeAsync

这是一个例子:

'Demo asynchronous script' : function (client) {
  client.timeoutsAsyncScript(10000);
  client.url('http://stackoverflow.com/');

  // execute a piece of script asynchroniously
  client.execute(function(data) {
        window._asyncResult = undefined;
        setTimeout(function(){
          window._asyncResult = "abcde";
        }, 2000);
     }, ["1234"]);

   // execute a task while the asynchroniously script is running
   client.assert.title('Stack Overflow');

   // wait for the asynchronous script to set a result
   client.executeAsync(function(done) {
        (function fn(){
            if(window._asyncResult !== undefined)
              return done(window._asyncResult);
            setTimeout(fn, 30);
        })();
   }, [], function(result) {
     // evaluate the result
     client.assert.equal(result.value, "abcde");
   });

  client.end();
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

有没有办法阻止 Javascript 执行?

来自分类Dev

有没有办法找出ServerRequest是否具有主体?

来自分类Dev

有没有办法找出是否有youtube视频注释?

来自分类Dev

有没有办法找出表之间的关系?

来自分类Dev

有没有办法找出CSS规则的来源?

来自分类Dev

有没有办法找出wav文件是否未压缩pcm?

来自分类Dev

有没有办法找出A是否是B的子矩阵?

来自分类Dev

有没有办法找出对象是否已经被dispose()了?

来自分类Dev

有没有办法找出脚本的输出是否传递给eval?

来自分类Dev

有没有办法找出内核升级是否删除了Apache?

来自分类Dev

有没有办法找出JavaScript中更改HTML属性的行?

来自分类Dev

有没有办法查看是否通过nunit或nunit-console运行了硒测试?

来自分类Dev

有没有办法检查shell脚本是否用-x标志执行

来自分类Dev

有没有办法在cuBLAS中执行“ saypx”?

来自分类Dev

有没有办法执行此循环?

来自分类Dev

有没有办法检查谁执行查询?

来自分类Dev

有没有办法找出Windows 7工作站的控制面板中是否关闭了更新?

来自分类Dev

有没有办法找出一个方法是否被同一个对象递归调用?

来自分类Dev

有没有办法强制中止正在执行的JavaScript(或jQuery)功能?

来自分类Dev

有没有办法在特定事件触发之前停止执行Javascript函数?

来自分类Dev

有没有办法检查$ _POST是否存在?

来自分类Dev

有没有办法确定文件是否隐藏?

来自分类Dev

有没有办法使用Nightwatch中的If语句来控制测试

来自分类Dev

Javascript和SVG。有没有办法检测是否呈现了文本?

来自分类Dev

有没有办法检查HTML / Javascript中是否单击了按钮?

来自分类Dev

Javascript和SVG。有没有办法检测是否呈现了文本?

来自分类Dev

有没有办法清除JavaScript中的对象?

来自分类Dev

有没有办法在JavaScript中使用C ++?

来自分类Dev

有没有办法在Javascript中组合对象

Related 相关文章

  1. 1

    有没有办法阻止 Javascript 执行?

  2. 2

    有没有办法找出ServerRequest是否具有主体?

  3. 3

    有没有办法找出是否有youtube视频注释?

  4. 4

    有没有办法找出表之间的关系?

  5. 5

    有没有办法找出CSS规则的来源?

  6. 6

    有没有办法找出wav文件是否未压缩pcm?

  7. 7

    有没有办法找出A是否是B的子矩阵?

  8. 8

    有没有办法找出对象是否已经被dispose()了?

  9. 9

    有没有办法找出脚本的输出是否传递给eval?

  10. 10

    有没有办法找出内核升级是否删除了Apache?

  11. 11

    有没有办法找出JavaScript中更改HTML属性的行?

  12. 12

    有没有办法查看是否通过nunit或nunit-console运行了硒测试?

  13. 13

    有没有办法检查shell脚本是否用-x标志执行

  14. 14

    有没有办法在cuBLAS中执行“ saypx”?

  15. 15

    有没有办法执行此循环?

  16. 16

    有没有办法检查谁执行查询?

  17. 17

    有没有办法找出Windows 7工作站的控制面板中是否关闭了更新?

  18. 18

    有没有办法找出一个方法是否被同一个对象递归调用?

  19. 19

    有没有办法强制中止正在执行的JavaScript(或jQuery)功能?

  20. 20

    有没有办法在特定事件触发之前停止执行Javascript函数?

  21. 21

    有没有办法检查$ _POST是否存在?

  22. 22

    有没有办法确定文件是否隐藏?

  23. 23

    有没有办法使用Nightwatch中的If语句来控制测试

  24. 24

    Javascript和SVG。有没有办法检测是否呈现了文本?

  25. 25

    有没有办法检查HTML / Javascript中是否单击了按钮?

  26. 26

    Javascript和SVG。有没有办法检测是否呈现了文本?

  27. 27

    有没有办法清除JavaScript中的对象?

  28. 28

    有没有办法在JavaScript中使用C ++?

  29. 29

    有没有办法在Javascript中组合对象

热门标签

归档