当前位置: 首页 > 知识库问答 >
问题:

如何维护selenium在jenkins服务器上运行

姜明贤
2023-03-14
 java -jar /opt/selenium-server-standalone-2.53.0.jar  -Dwebdriver.chrome.args="--use-gl=osmesa" -Dwebdriver.chrome.driver=/usr/bin/chromedriver -Dwebdriver.chrome.bin=/usr/bin/google-chrome  -log /var/log/selenium/selenium.log > /var/log/selenium/output.log 2> /var/log/selenium/error.log & echo $! > /tmp/selenium.pid

但我总是遇到selenium服务器死掉的问题。谁能告诉我怎样才能最好地保持硒呢?对于维护selenium服务器,我应该知道哪些最佳实践?

在运行selenium测试时,我有时会遇到以下错误

tests/npw Connection refused! Is selenium server started? 

tests/npw { sessionId: null, 
status: 13, 
state: 'unhandled error', 

value: 
{ message: 'Read timed out', 
suppressed: [], 
localizedMessage: 'Read timed out', 
cause: null, 
class: 'java.net.SocketTimeoutException', 
hCode: 1232868082, 
screen: null }, 
class: 'org.openqa.selenium.remote.Response',
hCode: 1242507638 } 

共有1个答案

薛征
2023-03-14

您可以做的一件事是尝试在Jenkins节点中运行Selenium服务器,以便与主服务器完成的其他可能的工作和功能分开。将其配置为服务并配置为在服务器启动时自动运行。

对于Centos OS:在/etc/systemd/system/selenium-node.service中创建一个文件

添加以下内容:

[Unit]
Description=Run a selenium node

[Service]
ExecStart=/usr/bin/java -jar /route/to/selenium/selenium-server-standalone-2.52.0.jar -role node blablabla
Restart=on-abort

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl start selenium-node.service
 类似资料:
  • 我有一个Cucumber测试套件,由Jenkins在一个服务器池上执行,该服务器池有时在服务器池中并发运行。 当服务器a上的测试运行更改了数据库存储的设置时,我遇到了竞争情况,这会导致服务器B上的测试运行失败,因为它正在寻找处于不同状态的设置 有没有办法将cucumber tests或Jenkins配置为在服务器B上运行场景,等待服务器a上运行的场景完成后再继续?

  • 我有两个作业运行在两个不同的Jenkins服务器机器。 工作A= 工作B= 作业B连续365天每15分钟运行一次。现在,当作业A运行时,作业B失败,因为作业A是代码部署。因此,理想情况下,我的作业B应该在作业A运行期间保持,而不是运行。 有人可以帮助任何插件,可以帮助实现这一点或任何脚本以及如何配置它。 简单地说,这两个作业不应该同时运行

  • 我正在使用TestNG、Maven和Jenkins来运行我的代码(Java)。我需要在另一台服务器上运行我的测试,所以到目前为止,我所尝试的是在服务器上运行Jenkins作为服务并安排作业,但它产生了一个问题,即测试在后台运行(导致所有测试失败),我尝试配置此图片中的Jenkins服务:在此输入图像描述 但它不起作用,所以我试着运行Jenkins而不是作为服务,测试运行得很好,但我无法安排作业,因

  • 我正在使用testNG框架和ANT任务运行Selenium测试。测试在我的windows机器上运行良好。。然后,我将其部署到我的Jenkins CI服务器上,并为无头运行测试进行必要的配置: > 在运行jenkins(CentOS)的服务器上安装了vnc服务器 为jenkins安装了Xvnc插件,并在我的作业配置中启用了“在构建期间运行Xvnc” 然而,我得到以下错误-任何帮助?我已经搜索了网络,

  • 我正在尝试在一个使用chrome的Linux服务器上运行一个使用selenium webdriver实现的测试,并且不显示我的java代码 要运行此程序(jar),请使用以下命令启动Xvfb 当我运行程序时,经过一段长时间的等待,我得到了这个异常 当我尝试单独运行chrome时,a遇到了这个问题 问题是: 是在定位驱动程序的问题还是在chrome或我需要一些额外的配置?

  • 问题内容: 我正在尝试运行selenium服务器,并出现错误: 没有-r(反正是什么?) 我应该如何启动服务器? 如何设置非默认端口来收听? 这两篇文章:1 2-关于语法矛盾。我认为。 问题答案: 如果要指定端口,请执行 从3.8.1开始,不再需要指定驱动程序: