我有一个Jenkins项目,该项目运行一百多个Cucumber功能文件。每个测试方案都使用Selenium,因为我需要测试网站的UI。问题是Jenkins尝试几乎一次全部运行它们,因此我得到了Selenium Google Chrome浏览器的爆炸声,它们试图一次全部弹出。这导致我的计算机内存不足,并且只有少数Selenium浏览器可以响应。
我是否可以限制一次激活的Selenium浏览器的数量?它可能位于Jenkins或Selenium中,但我宁愿远离Selenium Grid。
我已经尝试在Jenkins中对其进行限制,但似乎您只能限制并行构建的数量。我的问题是我只有一个构建,并且几乎一次执行所有测试。
对于Selenium Grid,Jenkins的构建步骤中使用的命令明确表示不要使用Selenium Grid。
在Jenkins下,对于“执行Windows批处理”命令:
cd folderLocation
mvnw clean verify -Dgui.feature.tags=@test -Dbrowser=chrome -Dforked.jvm.count=3 -Duse.selenium.grid=false
使用此命令,将创建测试运行器,以指定要运行的所有方案以及结果JSON文件的位置。
Selenium,Java和Maven的代码库是从另一台机器复制的。手动运行Jenkins项目时,它们在该计算机上一次只能激活Selenium浏览器。但是,在新机器上,我们重新设置了Jenkins的设置,如果您运行该构建,它将尝试立即启动所有Selenium浏览器,并且大多数浏览器最终无响应。一段时间后,它将以错误内存转储结束。
我再说一遍,我有办法限制打开的Selenium浏览器的数量吗?