executeAsyncScript的作用:
就是把异步的js过程变成java同步的形式,方便java程序及时的接收到同步数据
1.cmdriver.manage().timeouts().scriptTimeout(Duration.ofMinutes(1)); //用来设置异步执行脚本的时间超时
设置这个时间就是为了下面执行脚本等待超时后,继续执行java代码。
2.executeAsyncScript(“var callback=arguments[arguments.length-1];yourfunction(callback);”)
var callback=arguments[arguments.length-1];//这个不要问为什么,规定就是这样的,这样就可以得到一个供js脚本去执行callback的变量实例,方便后面的js代码中使用这个callback函数
3.yourfunction函数如何定义,
yourfunction(func){
func("异步执行完成");//这一步就是告诉jsdriver,异步执行完成可以继续执行后面的java程序
};
4.func("异步执行完成");中的参数就是executeAsyncScript执行结果返回的内容object
标签:异步,java,executeAsyncScript,selenium,callback,arguments,执行 From: https://www.cnblogs.com/itshijieku/p/17050874.html