Python +硒网格

时间:2018-12-12 20:31:54

标签: python selenium selenium-webdriver selenium-grid

我设法在自己的PC上设置了Node + Hub。

我有一个名为run_parallel_test.py的文件,它只是创建一个进程来执行基于sys args的测试脚本,这只是具有功能的浏览器配置。

命令如下:python run_parallel_tests.py testrunner.py browsers.json

testrunner.py基本上是Python的执行测试套件的unittest框架。

我以前遇到的问题是,我迷上了浏览器堆栈,而不是硒网格,因此能够传递如下浏览器功能:

    [
  {
    "browser": "Chrome",
    "browser_version": "71.0 beta",
    "os": "Windows",
    "os_version": "10",
    "resolution": "1920x1080"
  },
  {
    "browser": "Firefox",
    "browser_version": "blah blah",
    "os": "Windows",
    "os_version": "10",
    "resolution": "1920x1080"
  }
]

现在有了网格,这些功能不再起作用,我已经创建了准系统功能来简单地运行我的测试,例如:

    [
  {
    "browserName": "chrome",
    "browser_version": "71.0 beta",
    "platform": "WINDOWS"
  },
  {
    "browserName": "firefox",
    "browser_version": "64.0 beta",
    "platform": "WINDOWS"
  },
  {
    "browserName": "chrome",
    "platform": "WINDOWS"
  },
  {
    "browserName": "internet explorer",
    "platform": "WINDOWS"
  }
]

问题是,我不再能够像以前使用浏览器堆栈那样通过JSON文件配置来设置分辨率等。有没有办法设置分辨率?

我已经检查过:https://github.com/SeleniumHQ/selenium/wiki/DesiredCapabilities 我找不到它的文档。也许我在找错地方了。

1 个答案:

答案 0 :(得分:1)

您无法通过服务器/网格进行设置,因为它们没有为浏览器像在浏览器堆栈中一样运行设置容器。您需要通过the set_window_size command

在python代码中设置浏览器大小