我的开发环境在Virtual Box(Ubuntu)中运行,我想通过在我的主机上启动Firefox来预先测试我的测试。
我的虚拟盒网络设置为桥接适配器
我的主机使用以下命令启动selenium服务器:
java -jar selenium-server-standalone-2.45.0.jar -role hub -port 4444
我的虚拟机运行此命令:
java -jar selenium-server-standalone-2.45.0.jar -role webdriver -port 5558 -hub http://xxx.xxx.xxx.xxx:4444/grid/register
虚拟机连接后,我的主机上的Hub有此消息:
Failed to check status of node: Connect to 172.17.42.1:5558 [/172.17.42.1] failed: Connection timed out: connect
我在stackoverflow上读到了其他问题,说我的Hub网络无法连接到我的虚拟机。由于我有使用桥接适配器的Virtual Box,我想知道如何才能使这个工作?
任何建议表示赞赏。非常感谢你
答案 0 :(得分:0)
您现在遇到的错误是,Guest可以与主机通话,但是正在为回调注册错误的IP地址。通过使用localhost / 127.0.0.1,您可以告诉Selenium节点和网格实例依赖本地端口转发。
配置来宾VM以使用NAT网络,并为端口5558添加端口转发(节点的默认值为5555)和端口4444,将两个IP地址留空或设置为0.0.0.0您可能还想转发端口80,以便您的主机可以看到来宾Web服务器。使用NAT时,在Guest计算机中,ip地址10.0.2.2是与主机通信的IP地址。以下是命令:
主机,作为中心
java -jar selenium-server-standalone-2.45.0.jar -role hub -port 4444
来宾计算机,作为节点
java -jar selenium-server-standalone-2.45.0.jar -role node -host 127.0.0.1 -port 5558 -hub http://10.0.2.2:4444/grid/register