SCM - Git, CI - Jenkins
我配置了Git,Gerrit& Jenkins工作流程并在jenkins slave上配置了自动化套件。
在Gerrit上创建补丁集后,我能够在奴隶机器上运行TestNG套件。
但目前对于在Gerrit上创建的任何类型的补丁集都会调用相同的测试套件。我想要实现的是根据推入Gerrit的文件名执行测试。
例如。如果推送 login.jsp ,则应执行登录测试,而不是完整的测试套件。
有关如何实现这一目标的任何提示?我目前正在考虑的方向是,有没有办法通知奴隶推送文件的名称?
答案 0 :(得分:1)
有各种方法可以做到这一点。 您可以在Gerrit触发器插件的后续实现中触发路径。
在配置视图中有一个添加文件路径。
通过这种方式,您可以在不同的路径上触发不同的作业。
我过去所做的是在目录中有一个.information文件,我指定要添加哪些评论者,如果这个.information文件下面的文件发生了变化,那么要执行哪些测试用例,然后执行特定的脚本。
您可以使用git log -1 --name-status
找到在提交中修改的文件