Chrome 驱动程序版本 92 未运行测试

时间:2021-07-22 16:43:03

标签: selenium automated-tests selenium-chromedriver

我在浏览器打开的情况下运行 92 版时遇到问题,在无头模式下工作正常。

我目前正在 docker 容器上运行我的测试。 chrome-driver 的安装如下:

RUN curl -s https://dl.google.com/linux/linux_signing_key.pub | apt-key add - \
    && echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google-chrome.list && \
    apt-get update && \
    apt-get install -y \
    xvfb \
    google-chrome-stable=92.\* \
    unzip

RUN curl -s -o /tmp/chromedriver.zip "https://chromedriver.storage.googleapis.com/$(curl -s https://chromedriver.storage.googleapis.com/LATEST_RELEASE_92)/chromedriver_linux64.zip" && \
    unzip /tmp/chromedriver.zip chromedriver -d /usr/bin/ && \
    chmod +x /usr/bin/chromedriver

执行我的命令来运行测试后,浏览器打开但没有任何反应。 我被数据困住了;地址栏上,页面一直在加载。

我目前正在使用 chrome 选项:

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--incognito")
chrome_options.add_argument("--disable-dev-shm-usage")

chrome version 92 stuck at data;

1 个答案:

答案 0 :(得分:1)

看起来它与在 Linux 上运行的旧 Nvidia 驱动程序有关:

<块引用>

您可能需要使用 --disable-gpu 在 Linux 上运行 NVIDIA 驱动程序早于 295.20

来源:chromium documentation

所以,添加 chrome_options.add_argument("--disable-gpu") 解决了我的问题。