【发布时间】:2019-02-21 03:32:57
【问题描述】:
我正在尝试设置一个容器以在 chrome 上使用 RobotFramework 进行测试。
但是当我运行我的容器时,我不断收到 WebDriverException。 我已经搜索过,但找不到任何真正适合我的修复程序。
这是我的 Dockerfile
FROM python:3
RUN apt-get update -y
# Dependencies
RUN apt-get install -y \
apt-utils \
build-essential \
fonts-liberation \
gconf-service \
libappindicator1 \
libasound2 \
libcurl3 \
libffi-dev \
libgconf-2-4 \
libindicator7 \
libnspr4 \
libnss3 \
libpango1.0-0 \
libssl-dev \
libxss1 \
python-dev \
python-pip \
python-pyasn1 \
python-pyasn1-modules \
unzip \
wget \
xdg-utils \
xvfb \
libappindicator3-1 \
libatk-bridge2.0-0 \
libgtk-3-0 \
lsb-release
# Install Chrome for Selenium
RUN curl https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb -o /chrome.deb
RUN dpkg -i /chrome.deb || apt-get install -yf
RUN rm /chrome.deb
# Install chromedriver for Selenium
RUN curl https://chromedriver.storage.googleapis.com/2.42/chromedriver_linux64.zip -o /usr/local/bin/chromedriver
RUN unzip -o /usr/local/bin/chromedriver -d /usr/local/bin
RUN chmod +x /usr/local/bin/chromedriver
WORKDIR /home
COPY . .
RUN pip install -e .
CMD [ "pybot","./tests/test.robot" ]
这是我不断收到的错误
WebDriverException:消息:未知错误:Chrome 无法启动: 异常退出(未知错误:DevToolsActivePort 文件没有 存在)(进程从 chrome 位置开始 /usr/bin/google-chrome 不再运行,所以 ChromeDriver 是 假设 Chrome 崩溃了。)(驱动程序信息: 铬驱动程序=2.42.591071 (0b695ff80972cc1a65a5cd643186d2ae582cd4ac),平台=Linux 4.15.0-34-通用 x86_64)
我的 test.robot:
*** Settings ***
Library Selenium2Library
*** Variables ***
*** Test Cases ***
Connect
Open Browser https://google.es Chrome
我想我错过了一些东西,但是,我只是不知道该怎么做。
在我的 setup.py 上:
install_requires=[
'robotframework',
'robotframework-selenium2library',
'selenium'
]
【问题讨论】:
-
这张图片很难看,你能编辑你的问题并粘贴输出吗?
-
你有它
-
你使用什么版本的 selenium 和 Selenium2Library?
-
我的 setup.py 上有这个,我猜它安装的是最新版本。我猜错了吗? install_requires=[ 'robotframework', 'robotframework-selenium2library', 'selenium' ]
-
看起来您正在安装,但没有启动 xvfb。这个问题的一些答案可能会有所帮助stackoverflow.com/questions/22558077/…
标签: selenium-chromedriver dockerfile robotframework selenium2library