我在http://server:4440
启动并运行了一个selenium hub,在两台不同的机器上,我在网格上注册了一个节点,我可以在/grid/console
中看到。
当我尝试在PHPUnit Selenium2
测试中连接到集线器时,我得到一个无活动的会话错误。测试用例的代码:
public static $browsers = array(
array(
'browserName' => 'firefox',
'host' => 'my-jenkins',
'port' => 4440
)
);
FWIW,这是节点和中心服务初创公司。 轮毂:
java -jar E:\selenium\selenium-server-standalone-2.50.1.jar -role hub -hubConfig E:\\selenium\hub.json
集线器配置文件:
{
"host": "my-jenkins",
"port": 4440,
"newSessionWaitTimeout": -1,
"servlets" : [],
"prioritizer": null,
"capabilityMatcher": "org.openqa.grid.internal.utils.DefaultCapabilityMatcher",
"throwOnCapabilityNotPresent": true,
"nodePolling": 5000,
"cleanUpCycle": 5000,
"timeout": 300000,
"browserTimeout": 0,
"maxSession": 5,
"jettyMaxThreads":-1
}
节点:
java -jar E:\selenium\selenium-server-standalone-2.50.1.jar -role node -nodeConfig E:\selenium\node.json -hub http://my-jenkins:4440/grid/register -DfirefoxProfileTemplate=E:\selenium\firefox_profiles\selenium_tester -Dwebdriver.firefox.profile=selenium_tester -Dwebdriver.ie.driver=E:\selenium\IEDriverServer.exe
节点配置:
{
"capabilities":[
{
"platform": "WINDOWS",
"browserName": "firefox",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
},{
"platform": "WINDOWS",
"browserName": "internet explorer",
"version": "11",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
},{
"platform": "WINDOWS",
"browserName": "internet explorer",
"version": "10",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
},{
"platform": "WINDOWS",
"browserName": "internet explorer",
"version": "9",
"maxInstances": 1,
"seleniumProtocol": "WebDriver"
}
],
"configuration":{
"maxSession":7,
"port":5556,
"register":true,
"registerCycle": 5000,
"nodeTimeout":120,
"nodePolling":2000,
"registerCycle":10000,
"cleanUpCycle":2000,
"timeout":30000
}
}
浏览http://localhost:5556
时,我得到了
403 Forbidden
Forbidden for Proxy
关于我在这里做错了什么的想法?
答案 0 :(得分:0)
Win + R>>运行cmd
>> netstat -aon | findstr :4440
最右边的列显示了使用此端口的进程的PID。
或通过资源监控器。 Win + R>>运行resmon
>>网络>>听力端口
在您的测试中,您应该与集线器进行交互。我曾与Java
合作过,并且:
WebDriver driver = new RemoteWebDriver(新网址(" http://localhost:4440/wd/hub"),功能)
http://localhost:5556 - 这是一个节点。
您应该通过集线器与您的节点进行交互: http://localhost:4440
我尝试直接导航到我的工作环境中的某个节点并收到同样的错误。
HTTP ERROR: 403
Forbidden for Proxy
RequestURI=/
Powered by Jetty://
Selenium-Grid如何工作 - 使用集线器和节点
网格由单个集线器和一个或多个节点组成。两者都是使用selenium-server.jar可执行文件启动的。
集线器接收要执行的测试以及应运行测试的浏览器和“平台”(即WINDOWS,LINUX等)的信息。它“知道”已经“注册”到集线器的每个节点的配置。使用此信息,它选择具有所请求的浏览器 - 平台组合的可用节点。选择节点后,测试启动的Selenium命令将发送到集线器,集线器将它们传递给分配给该测试的节点。该节点运行浏览器,并在该浏览器中针对正在测试的应用程序执行Selenium命令。