今天试了下selenium server,按照书上的教程走,怎么弄都是抛出错误:

startup.bat:

java -jar  "D:\selenium-server-standalone-3.141.59.jar"  -role hub
pause

driver.py:

from selenium.webdriver import Remote
from selenium import webdriver

#启动浏览器驱动
def browser():
    # driver=webdriver.Chrome()
    host = '127.0.0.1:4444'    #运行主机:端口号(本机默认:127.0.0.1:4444)
    dc = {'browserName': 'chrome'}  #指定浏览器
    driver = Remote(command_executor='http://'+host+'/wd/hub',
                    desired_capabilities=dc)
    return driver

if __name__ == '__main__':
    dr = browser()
    dr.get('http://www.baidu.com')
    dr.quit()

然后运行了之后,会出现错误:

selenium.common.exceptions.WebDriverException: Message: Error forwarding the new session Empty pool of VM for setup Capabilities {browserName: chrome}
Stacktrace:
    at org.openqa.grid.web.servlet.handler.RequestHandler.process (RequestHandler.java:118)
     。。。。。。

试了网上修改path,还是没用,在一个论坛上看到这样的解释:
测试项目:BBS社区项目实战--hub和node的问题可能就是如果要加上**-role hub**的话,必须要同时设置它的node节点。

补充知识:

什么是selenium-grid,官方解释:takes Selenium Remote Control to another level by running tests on many servers at the same time, cutting down on the time it takes to test multiple browsers or operating systems。

个人理解是分布式测试,即在不同的操作系统、浏览器上并发执行测试用例,那如何使用呢,这两天研究了一下,初步能调用起来,也算刚入门,今天做下总结。

首先要知道grid是有一个hub和若干个node组成,hub负责管理node和接收代码的request,并把request分发给node,让node去执行。

1.下载selenium-server-standalone-XXX.jar,可以去官网下载最新的,下载地址:http://pan.baidu.com/s/1kT3rK5T

2.选一台机器作为hub,启动dos,输入命令:
java -jar selenium-server-standalone-2.45.0.jar -role hub

3.选一台机器作为node,启动dos,输入命令:
java -jar selenium-server-standalone-2.45.0.jar -role node -hub

4.如果电脑有限,可使用虚拟机或者在hub所在的机器,也启动一个node,启动dos,输入命令:
java -jar selenium-server-standalone-2.45.0.jar -role node -hub

5.启动成功后,可在hub所在的机器的浏览器中输入http://localhost:4444/grid/console,查看所连接的node信息

6.测试代码

相关文章:

  • 2021-08-02
  • 2022-12-23
  • 2021-12-02
  • 2021-12-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-03-31
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-01-16
  • 2021-10-30
  • 2021-08-27
相关资源
相似解决方案