Headless chrome docker image
Many of you choose to run selenium tests heedlessly , for that you need a docker image , bellow you can find the Headless Chrome Docker image for a ruby environment.
Example:
# Base the image off of the latest pre-built ruby image
FROM ruby:2.4
ENV DEBIAN_FRONTEND noninteractive
# make and switch to the /code directory which will hold the tests
RUN mkdir /code
#RUN adduser --disabled-password --gecos '' newuser
WORKDIR /code
RUN mkdir output && chmod a+w output && mkdir output/logs && mkdir output/rerun
# move over the Gemfile and Gemfile.lock before the rest so that we can cache the installed gems
ADD Gemfile /code/Gemfile
ADD Gemfile.lock /code/Gemfile.lock
# install bundler
RUN gem install bundler -v 1.14.6
# install all the gems specified by the gemfile
RUN bundle install
RUN echo "deb http://dl.google.com/linux/chrome/deb/ stable main" | tee -a /etc/apt/sources.list
RUN wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
RUN apt-get update && \
apt-get -qq -y install iceweasel \
libxpm4 libxrender1 libgtk2.0-0 libnss3 libgconf-2-4 \
libpango1.0-0 libxss1 libxtst6 fonts-liberation libappindicator1 xdg-utils
RUN apt-get update && apt-get install -y google-chrome-stable
RUN apt-get install -f
RUN apt-get -y install \
gtk2-engines-pixbuf \
xfonts-cyrillic xfonts-100dpi xfonts-75dpi xfonts-base xfonts-scalable \
imagemagick x11-apps zip
RUN wget -O /tmp/chromedriver.zip https://chromedriver.storage.googleapis.com/2.33/chromedriver_linux64.zip
RUN unzip /tmp/chromedriver.zip chromedriver -d /usr/local/bin/
RUN chmod ugo+rx /usr/local/bin/chromedriver
# copy over the rest of the tests
ADD . /code
To get you started with Headless Chrome you can read our article here or for more advanced details you can consult google developer page .
Build your docker image:
docker build -t headless-chrome-docker-image .
Run your selenium tests using headless chrome
docker run --privileged -v /dev/shm:/dev/shm -i headless-chrome-docker-image cucumber -t @foo -f pretty -f rerun --out output/rerun.txt BROWSER='chrome_headless'
Hope this will help , Happy testing!
The post Headless Chrome Docker image appeared first on Testingrepository - Talking about selenium , and our passion.