Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.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 Selenium with Node.js:无法停止循环执行_Javascript_Selenium Webdriver_Promise - Fatal编程技术网

Javascript Selenium with Node.js:无法停止循环执行

Javascript Selenium with Node.js:无法停止循环执行,javascript,selenium-webdriver,promise,Javascript,Selenium Webdriver,Promise,我已经用Selenium和Node.js编写了一些测试,但当我运行该测试时,它永远不会结束 我的代码是: driver.wait(function () { return driver.executeScript('return document.readyState').then(function (readyState) { if (readyState === 'complete') { doTest(); // HE

我已经用Selenium和Node.js编写了一些测试,但当我运行该测试时,它永远不会结束

我的代码是:

driver.wait(function () {
    return driver.executeScript('return document.readyState').then(function (readyState) {
        if (readyState === 'complete') {
            doTest();
            // HERE I WANT TO EXIT
        };
    });
});
doTest方法被无限次调用

现在你可以看到这里我想退出我试图用以下方法停止循环:

return true;
return false;
resolve();
driver.close();
driver.quit();
但是没有一个有效,有什么帮助吗?

不清楚为什么返回true;不起作用。可能的问题是doTest失败,出现了一些由wait传播的异常。你有没有检查你的代码是否到达我想退出的那一行

我建议在doTest之后添加console.log以确保doTest成功完成

或者,如果一切正常,则使doTest返回true;如果有异常,则使doTest返回false,并将其作为

    if (readyState === 'complete') {
        return doTest();
    };

我不能解决我的问题。。。但也许你说的是对的。谢谢