SCM - Git, CI - Jenkins
我配置了Git,Gerrit& Jenkins工作流程并在jenkins slave上配置了自动化套件。
在Gerrit上创建补丁集后,我能够在奴隶机器上运行TestNG套件。
但目前对于在Gerrit上创建的任何类型的补丁集都会调用相同的测试套件。我想要实现的是根据推入Gerrit的文件名执行测试。
例如。如果推送 login.jsp ,则应执行登录测试,而不是完整的测试套件。
有关如何实现这一目标的任何提示?我目前正在考虑的方向是,有没有办法通知奴隶推送文件的名称?
答案 0 :(得分:1)
您可以使用Git查找正在测试的提交修改的文件(或者修改的文件与分支的提示相比,最合适的是什么)。例如,
git diff-tree -r --name-only HEAD~1 HEAD
列出了当前检出的提交中修改的文件的路径。