Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 同一台机器上有多个Selenium实例?_Python_Firefox_Selenium - Fatal编程技术网

Python 同一台机器上有多个Selenium实例?

Python 同一台机器上有多个Selenium实例?,python,firefox,selenium,Python,Firefox,Selenium,如果测试用于以下目的,那么并行运行多个selenium实例的最佳方法是什么: 相同的浏览器类型 同一台机器 我读过这篇文章:在同一台机器上运行多个Selenium实例似乎存在系统性问题。但我想问问社区是否有我看不到的方法 我有一个正在运行的selenium实例运行e2e测试。但是,我现在希望使用相同的浏览器类型并行运行5个selenium实例 我已经研究了Selenium Grid 2,我不确定它是否适合我的用例。Selenium Grid 2的要点似乎是能够根据浏览器版本/操作系统分发测试。但

如果测试用于以下目的,那么并行运行多个selenium实例的最佳方法是什么:

  • 相同的浏览器类型
  • 同一台机器
  • 我读过这篇文章:在同一台机器上运行多个Selenium实例似乎存在系统性问题。但我想问问社区是否有我看不到的方法

    我有一个正在运行的selenium实例运行e2e测试。但是,我现在希望使用相同的浏览器类型并行运行5个selenium实例

    我已经研究了Selenium Grid 2,我不确定它是否适合我的用例。Selenium Grid 2的要点似乎是能够根据浏览器版本/操作系统分发测试。但在我的例子中,每个测试都是针对相同类型、相同浏览器版本的

    运行独立测试非常有效

    运行多个Firefox进程: 但当我尝试通过生成多个Firefox进程来扩展时,我得到的错误主要涉及HTTP和
    请求
    错误,包括
    BadClient
    StatusError
    异常:无法发送请求

    
    webdriver.Firefox()
    

    使用网格 我深入研究了
    webdriver.Firefox()
    code,在场景下,它似乎正在本地连接:

    
    类WebDriver(RemoteWebDriver):
    def uuu init uuuu(self,firefox_profile=None,firefox_binary=None,timeout=30,capabilities=None,proxy=None):
    ...
    RemoteWebDriver.\uuuu初始化\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu,
    命令\执行器=扩展连接(“127.0.0.1”,self.profile,self.binary,超时))
    

    RemoteWebDriver实例似乎只是在找到的空闲端口上连接到localhost。这似乎与网格在注册节点时使用的命令相同:

    
    java-jar-selenium-server-standalone-2.44.0.jar-role-node-hubhttp://localhost:4444/grid/register
    

    网格是否与在同一台机器上运行并行Selenium实例相关?或者它主要是运行在不同机器上的实例的负载平衡器

    是否有可能在服务器上并行运行可靠的、非片状的Selenium实例​相同的​ 机器?当我并行运行它们时,我会得到HTTP片状(许多请求无法发送,或者出现错误状态,或者浏览器在从套接字读取信息之前关闭)

    硒网格2有什么意义?它是否只是作为多台机器上并行测试运行的负载平衡器?如果我在同一台机器上使用中心和节点在本地运行网格(全部用于FF),它是否与我运行多个
    webdriver.Firefox()
    进程一样有效

    还是在幕后有更多的魔力