可以使用groovysh
或groovy scriptname
测试jenkins管道脚本,以便在不使用Jenkins UI的情况下运行测试验证
例如,对于一个简单的脚本
pipeline {
stages {
stage ('test') {
steps {
sh '''
env
'''
}
}
}
}
运行这样的测试,具体取决于脚本的子集:
No signature of method: * is applicable for argument types
groovysh_evaluate.pipeline()
或 阶段( '试验'){ sh''' ENV “”” }
报告:
No signature of method: groovysh_evaluate.stages()
或只是
sh '''
env
'''
报告:
No signature of method: groovysh_evaluate.sh()
问题可能是需要哪些进口以及如何在jenkins安装之外安装它们?
为什么有人想要这样做?
简化并缩短迭代测试用例,验证库版本,无需修改jenkins安装和其他单元和功能测试场景。
答案 0 :(得分:1)
JenkinsPipelineUnit正是您要找的。 p>
此测试框架允许您通过提供管道的模拟执行来编写管道代码的配置和条件逻辑的单元测试。您可以模拟内置的Jenkins命令,作业配置,查看整个执行的堆栈跟踪,甚至跟踪回归。