我实际上有两个相关的问题。我无法在连接到Jenkins下运行的网格服务器的Selenium Grid节点(在“节点匹配配置”下列出)上启动“匹配配置”。我也无法找到任何包含相关信息的错误日志。
症状:
设置/故障排除
在代理节点上的日志(C:\ jenkins \ remoting \ logs)中,我在“匹配配置”启动失败后看到的最后一个条目显示成功消息,这显然是无关的 - (我实际上并不真的看到任何错误。)
2017年8月16日下午10:31:08 org.jenkinsci.remoting.engine.JnlpAgentEndpointResolver解析 信息:远程处理服务器接受以下协议:[JNLP4-connect,JNLP-connect,Ping,JNLP2-connect]
在selenium Grid控制台中,我看到:
Starting Selenium Grid
[Jenkins] $ "C:\Program Files (x86)\Jenkins\jre\bin\java" -cp "C:\Program
Files (x86)\Jenkins\war\WEB-INF\lib\remoting-3.10.jar"
hudson.remoting.Launcher -cp "C:\Program Files
(x86)\Jenkins\plugins\selenium\WEB-INF\lib\selenium-server-standalone-
3.5.0.jar;C:\Program Files (x86)\Jenkins\plugins\selenium\WEB-
INF\lib\htmlunit-driver-standalone-2.20.jar" -connectTo localhost:7138
Starting Selenium Grid
channel started
Aug 16, 2017 10:23:13 PM hudson.plugins.selenium.HubLauncher call
OFF: Grid hub starting with log level INFO
Aug 16, 2017 10:23:13 PM hudson.plugins.selenium.HubLauncher call
OFF: Grid Hub preparing to start on port 4444
2017-08-16 22:23:14.131:INFO::pool-1-thread-1 for channel id=167: Logging
initialized @1842ms to org.seleniumhq.jetty9.util.log.StdErrLog
Aug 16, 2017 10:23:14 PM org.openqa.grid.web.Hub initServer
INFO: Will listen on 4444
2017-08-16 22:23:14.193:INFO:osjs.Server:pool-1-thread-1 for channel id=167:
jetty-9.4.5.v20170502
2017-08-16 22:23:14.225:INFO:osjs.session:pool-1-thread-1 for channel
id=167: DefaultSessionIdManager workerName=node0
2017-08-16 22:23:14.225:INFO:osjs.session:pool-1-thread-1 for channel
id=167: No SessionScavenger set, using defaults
2017-08-16 22:23:14.225:INFO:osjs.session:pool-1-thread-1 for channel
id=167: Scavenging every 600000ms
2017-08-16 22:23:14.225:INFO:osjsh.ContextHandler:pool-1-thread-1 for
channel id=167: Started
o.s.j.s.ServletContextHandler@1962b49{/,null,AVAILABLE}
2017-08-16 22:23:14.240:INFO:osjs.AbstractConnector:pool-1-thread-1 for
channel id=167: Started ServerConnector@b7382c{HTTP/1.1,[http/1.1]}
{0.0.0.0:4444}
2017-08-16 22:23:14.240:INFO:osjs.Server:pool-1-thread-1 for channel id=167:
Started @1960ms
Aug 16, 2017 10:23:14 PM hudson.plugins.selenium.HubLauncher call
OFF: Grid Hub started on port 4444 with args: -maxSession 5 -timeout 300 -
browserTimeout 0 -host [my-jenkins-server]
Aug 16, 2017 10:23:17 PM org.openqa.grid.internal.Registry add
INFO: Registered a node http://[my-jenkins-server]:4445
Aug 16, 2017 10:23:54 PM org.openqa.grid.internal.Registry removeIfPresent
WARNING: Cleaning up stale test sessions on the unregistered node
http://[my-jenkins-server]:4445
channel stopped
非常感谢任何有用的错误数据的明显建议或位置。
谢谢!
答案 0 :(得分:0)
我弄清楚问题是什么。仅使用.jnlp文件将Selenium Agent节点连接到Selenium Grid Master是不够的。
我还必须在每个代理上启动selenium独立服务器。
我在Windows代理上创建了一个Windows批处理文件,它做了两件事。
在节点上启动匹配配置的功能相同,当您单击“开始”时,它只是刷新,并且配置未列在"运行配置"下。但是,如果您转到集线器管理UI以及网格控制台"网格控制台"您可以看到已启用的浏览器的已连接代理。此外,当您在Visual Studio中本地运行测试并将它们指向网格时,代理实际上会运行测试。
现在问题可能只是一个用户界面问题,将会得到解决。最终,代理程序已连接并可以运行分布式测试。