Angularjs 使用量角器multiCapabilities配置运行e2e测试,但限制max Webdriver实例
上下文 我正在试用带有multiCapabilities配置选项的全新量角器0.19.0。它实际上按照文档中的描述工作:Angularjs 使用量角器multiCapabilities配置运行e2e测试,但限制max Webdriver实例,angularjs,selenium-webdriver,integration-testing,protractor,Angularjs,Selenium Webdriver,Integration Testing,Protractor,上下文 我正在试用带有multiCapabilities配置选项的全新量角器0.19.0。它实际上按照文档中的描述工作: 它使在多个浏览器上运行测试变得更容易(不需要grunt,也不需要脚本,只需要一个配置文件) 它使测试并行运行 第二点对我来说是有问题的。我的一个应用程序无法处理数据的多个连接,这意味着测试失败 我的问题是: 是否可以限制Webdriver的最大实例数以禁用此应用程序的并行测试 我尝试过的 我发现有一个maxSession参数非常适合我的情况!但我试图将其添加到我的量角器配置中
maxSession
参数非常适合我的情况!但我试图将其添加到我的量角器配置中,但没有成功
maxSession
也在中。有人知道它是否起作用了吗
这是到的链接,我在那里留下了评论
如果您需要更多信息,请随时询问:)
提前谢谢
编辑:专用
EDIT2:我最近尝试将
seleniumArgs:['-maxSession=1']
添加到我的量角器配置中,不幸的是,这也不起作用…我认为您可以通过在命令行中启动seleniumArgs节点并给出以下命令来设置:
MaxInstances
这表示……同一版本的浏览器可以在远程系统上运行多少个实例
或
MaxSession
这表示在远程系统中一次可以并行运行多少浏览器(任何浏览器和任何版本)。因此,这将覆盖“最大实例数”设置,并可以限制可并行运行的浏览器实例数
因此,您将按如下方式运行节点:
java -jar selenium-server-standalone-2.14.0.jar -role node -hub http://******:4444/grid/register -maxSession 5
在0.24.0中实施并发布(请参阅)
您需要在量角器配置文件中添加一个值>=1的maxSessions
选项(否则为1)
dragrator.config.js示例:
在我的案例中已按预期进行了测试和工作。您是否以这种方式启动selenium服务器?因为现在我使用的是Drugator提供的
webdriver manager start
,它不接受这个参数,我也使用webdriver manager-start启动它,因为我还没有使用网格,但我在其他项目中也是这样启动的,它可以工作,只需将selenium JAR文件放在您的路径中,或者从selenium JAR folderFor中启动命令使用grunt量角器webdriver
:默认情况下,这种方法不起作用,因为keepAlive
默认为false
。显式地将其设置为true
就可以了。@loki2302感谢您提供的信息;)
exports.config = {
seleniumAddress: 'http://127.0.0.1:4444/wd/hub',
specs: [
'../e2e/**/*.js'
],
multiCapabilities: [
{'browserName': 'chrome'},
{'browserName': 'firefox'},
{'browserName': 'phantomjs'}
],
maxSessions: 1,
baseUrl: 'http://localhost:8000'
};