Solution-1:感谢@parasit,我找到了“ppodgorsek/robot-framework”。
您可以使用以下管道代码从 Jenkinsfile 启动机器人框架测试:
pipeline {
agent any
stages {
stage('Checkout') {
steps {
git branch: "master", url:'https://github.com/johan974/robot-framework-demo1.git'
}
}
stage('Test') {
steps{
sh 'docker run -v ${PWD}/reports:/opt/robotframework/reports:Z -v ${PWD}/Tests:/opt/robotframework/tests:Z \
-e BROWSER=chrome ppodgorsek/robot-framework:latest'
}
}
}
post {
always {
archive (includes: 'reports/*.html')
}
}
}
如果你有这些步骤(包括post),那么你可以在著名的log.html和report.html文件中找到结果,如下所示:
如果您在显示 RF 结果时遇到问题,可以在 Jenkins > 管理 jenkins > 脚本控制台中执行以下脚本:
System.setProperty("hudson.model.DirectoryBrowserSupport.CSP","sandbox allow-scripts; default-src 'none'; img-src 'self' data: ; style-src 'self' 'unsafe-inline' data: ; script-src 'self' 'unsafe-inline' 'unsafe-eval' ;")
UPDATE-2:使用小得多的 Robot Framework 映像,我可以启动 Robot Frameworkrunning。它抱怨未安装 chromedriver。该脚本如下所示。当您不必使用浏览器进行测试时,这可能就足够了。
pipeline {
agent {
docker {
image 'manycoding/robotframework'
}
}
stages {
stage('Checkout') {
steps {
git branch: "master", url:'https://github.com/johan974/robot-framework-demo1.git'
}
}
stage('Test') {
steps{
sh 'chmod a+x ./run-tests.sh && ./run-tests.sh'
}
}
}
post {
always {
archive (includes: 'reports/*.html')
}
}
}