【QA能力建设】GitLab与Jenkins持续集成

集成过程中要点、踩坑记录:

一.GitLab与Jenkins建立连接

1.先安装插件GitLab Plugin、Gitlab Hook Plugin;

2.创建工程(构建一个自由风格的项目),内含选项先不用设置;

3.在具体工程》配置》源码管理,选中Git;

4.Repository URL与Branch Specifier填写测试工程的仓库URL(ssh方式)与分支名

5.在Credentials》【add】内配置SSH Username with private key;

服务器的私钥位置:可参考

1)cd ~

2)ll -a 查看所有文件含隐藏文件

  1. cat .ssh/id_rsa 复制内含private key,

注意这两段都要复制:

-----BEGIN RSA PRIVATE KEY-----

-----END RSA PRIVATE KEY-----


二.配置HTML测试报告在Jenkins内展示

1.先安装插件HTML Publisher plugin;

2.在对应工程内最下方的《构建后操作》,点击【增加构建后操作步骤】,选择Publish HTML reports

3.在展开的Reports选项中填写信息

1)HTML directory to archive 填写当前工程存放报告的绝对路径,例:/var/lib/jenkins/workspace/trial_class/report

2)Index page[s] 填写生成的报告名称 例:*.html ---即匹配当前报告目录下的所有HTML文件

3)Report title 在工程外看到的测试报告的名字

4)其余未提及项可以为空不填

4.构建完任务后,出现的报告缺少样式,解决方式:参考

进入Jenkins-系统管理-脚本命令行,

运行:System.setProperty("hudson.model.DirectoryBrowserSupport.CSP", "")

注意:运行完命令后需要重跑job 测试报告的样式才生效,这种方式的优点是快速解决问题,缺点是重启Jenkins服务后,需要重新输入命令!!;永久解决问题的方法本人尝试没有生效,故不用,反正Jenkins部署在服务器,没事不会重启。

5.若出现构建工程成功,但Build History显示红灯的情况,暂时解决方式(目前都没有彻底解决问题,只是将Build History中的红灯改为蓝灯显示,不管job是否构建成功)

方法一:在执行的shell脚本最后加上exit 0

方法二:修改HTMLTestRunner源码 ----目前无效,只是将对应“报错”去除

在HTMLTestRunner.py的631行,

print >> sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime)

或者

print(sys.stderr, '\nTime Elapsed: %s' % (self.stopTime-self.startTime))

修改成

sys.stderr.write('\nTime Elapsed: %s\n' % (self.stopTime - self.startTime))

其它

Jenkins用户权限管理: https://www.jianshu.com/p/7e148bcfb96e

Jenkins参数化构建任务:https://www.cnblogs.com/meitian/p/5492457.html

Jenkins>Pipeline job:https://my.oschina.net/meituantech/blog/1922037

你可能感兴趣的:(【QA能力建设】GitLab与Jenkins持续集成)