如何将Robot Framework添加到Docker映像?我已经在Maven等上使用Jenkins图像了。
我已经阅读了很多文章,但据我所知,没有完整的动作集可以通过Dockerfile向Docker映像添加一层。
有了这个扩展的容器后,我可以执行通过“ robot ...”启动测试的shell脚本命令。它也应该与Firefox浏览器一起运行。
向该容器中添加RF的优点是,崩溃后很容易创建新的新图像/容器。
据我了解,此后我添加并可以使用Robot Framework插件显示报告。
我当前的Dockerfile包含Jenkins,Docker(参考),docker-compose,Maven和Npm。很棒!
FROM jenkins/jenkins:lts
USER root
... docker
ENV MAVEN_VERSION 3.5.4
RUN curl -fsSL http://archive.apache.org/dist/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz | tar xzf - -C /usr/share \
&& mv /usr/share/apache-maven-$MAVEN_VERSION /usr/share/maven \
&& ln -s /usr/share/maven/bin/mvn /usr/bin/mvn
ENV MAVEN_HOME /usr/share/maven
COPY settings.xml /root/.m2/settings.xml
RUN apt-get install -y curl \
&& curl -sL https://deb.nodesource.com/setup_9.x | bash - \
&& apt-get install -y nodejs \
&& curl -L https://www.npmjs.com/install.sh | sh
user jenkins
答案 0 :(得分:0)
在使用Robot Framework研究了许多现有的docker映像之后,我看到要在浏览器级别进行测试,还需要添加一些其他功能,例如chromedriver,geckodriver和无头浏览器。
要将所有这些软件添加到我现有的Jenkins图像中,会使图像扩展到超过1 Gig。真的太多了。留下这种方法的第二个原因:一般的Jenkins映像只会在特定情况下执行功能测试,因此并不总是如此。
因此,我采用的第二种方法是从Jenkinsfile启动Robot Framework测试。我发现带有Robot Framework和驱动程序的现有Docker映像很好。完整且有效的解决方案可以在带有this Jenkinsfile的帖子中找到。
机器人框架测试的结果如何?通过控制台显示状态(如通过/失败)。其余信息可通过(存档的)log.html和其他html文件获得。不需要机器人框架插件。像魅力一样起作用!