繁体   English   中英

如何通过带有webdriver.io的nodejs与phantomjs保持会话在硒中存活?

[英]How to keep a session alive in selenium with phantomjs through nodejs with webdriver.io?

我正在通过webdriver.io在node.js环境中使用selenium + phantomjs。 由于某种原因,会话会在一段时间后结束。 Selenium仍处于运行状态,但是在其资源中心中,没有更多活动会话。 我该如何预防?

Selenium Hub默认情况下会使任何不活动的会话超时,以释放资源供其他请求使用。 您可以通过在启动Hub时设置timeout=0来禁用此功能,它可以作为命令行参数或通过JSON配置(取决于您如何启动)来设置。

请记住,如果客户端因禁用超时而崩溃,则该实例将继续在使用中,并且无法用于新会话。

消息来源: https : //code.google.com/p/selenium/wiki/Grid2#Optional_parameters

如果您不想将全局超时扩展到无穷大,则需要在会话超时之前执行命令。

const driverTimeout = 60*1000;

// this interval should run before session expired and keep it alive.
const handleNumber = setInterval(() -> driver.getOrientation(), driverTimeout - 1000);

/** do some long async logic **/

// then stop the interval
clearInterval(handleNumber);

看到更多关于这个
https://l18.me/how-to-keep-alive-appium-driver-da9227b2fa

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM