使用量角器multiCapabilities配置运行e2e测试,但限制最大Webdriver实例
语境
我正在尝试使用multiCapabilities配置选项的全新Protractor 0.19.0。它实际上按照docs中所述进行工作:
- 它使在多个浏览器上运行测试变得更加容易(不需要grunt,也不需要脚本,只需要一个配置文件)。
- 它使测试并行运行
第二点对我来说是有问题的。我的一个应用程序无法处理与数据的多个连接,这意味着测试失败。
我的问题是:
是否可以限制Webdriver实例的最大数量以禁用此应用程序的并行测试?
我尝试过的
我在Selenium Webdriverjs Grid2
Wiki中发现,有一个maxSession
参数完全适合我的情况!但是我试图将其添加到我的量角器配置中,但没有成功。
maxSession
也在所需功能中。有人知道它是否正在工作吗?
这是multiCapabilities
PR主题的链接,我在那里留下了评论。
如果您需要更多信息,请随时询问:)
提前致谢!!
编辑: 专用的GitHub问题
EDIT2: 我最近尝试将其添加seleniumArgs: ['-maxSession=1']
到我的量角器配置中,不幸的是,这也行不通…
-
在
此commit中实现,并在0.24.0中发布(请参阅Protractor
changelog)。您需要
maxSessions
在量角器配置文件中添加一个选项,其值> = 1(否则将被
视为无限制
)。protractor.config.js示例:
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' };
经过测试并按预期工作。