Automation 在Nightwatch.js中达到预期条件之前运行操作的最佳方法?

Automation 在Nightwatch.js中达到预期条件之前运行操作的最佳方法?,automation,nightwatch.js,nightwatch,Automation,Nightwatch.js,Nightwatch,我正在自动化一个网站的一部分,当你点击一个按钮时,它就会启动一项工作。作业的状态会在页面的另一个字段中报告,但不会自动推送。最终用户需要单击页面内的刷新按钮以查看最新状态 像这样的 browser.expect.element('@status').text.to.equal('Done').before(10000); 如果数据是在不使用交互的情况下推送的,则会起作用,但由于我必须手动单击另一个按钮才能获取最新状态,因此无法工作 是否有一种内置方法可以在夜间监视中每隔[interval he

我正在自动化一个网站的一部分,当你点击一个按钮时,它就会启动一项工作。作业的状态会在页面的另一个字段中报告,但不会自动推送。最终用户需要单击页面内的刷新按钮以查看最新状态

像这样的

browser.expect.element('@status').text.to.equal('Done').before(10000);
如果数据是在不使用交互的情况下推送的,则会起作用,但由于我必须手动单击另一个按钮才能获取最新状态,因此无法工作


是否有一种内置方法可以在夜间监视中每隔[interval here]执行一次操作,直到[condition true]或[timeout Attached]为止?我不想使用硬暂停,因为作业可能会花费更多或更少的时间,这取决于服务器的感觉。

另一个字段是指iFrame、svg还是另一个选项卡/窗口? 您不需要手动操作,可以通过以下选项切换到其他窗口:

窗口句柄+切换到:

command(windowNum){
   const result = browser.windowHandles();
   let handle = result.value[windowNum];
   browser.switchWindow(handle);
}
刷新页面

browser.refresh();
我不相信在Nightwatch中有内置的方法,但我相信您可以使用for循环和if语句